是否有Windows的时间戳绝对时间?(.净)

Bab*_*oey 9 .net datetime timestamp systemtime

我正在使用WPF/C#应用程序,我需要锁定用户在一段时间内访问特定功能.基本上,从某个事件发生的那一刻起,我想在接下来的24小时内阻止某些访问.

简单的案例:

  • 事件发生,保存时间戳(使用DateTime或类似)
  • 用户尝试在15小时后访问区域,将现在与时间戳...块进行比较
  • 用户尝试在25小时后访问区域,将现在与时间戳...允许进行比较

都好.但是,用户可以更改系统时间,这对我来说很困难.他们可以提前24小时设置系统时间,我的应用程序将更加明智.

我假设在Windows中更改时间会进入系统的实时时钟......那么是否有任何独立于系统时钟的自由运行计时器?一个用户不能搞砸?

任何见解都表示赞赏.

Jos*_*osh 3

Environment.TickCount 不会随系统时间更改而更改,但会在重新启动时重置。一种选择是 HTTPS 安全 Web 服务和不允许证书验证失败的证书策略。否则,欺骗服务的响应将是非常简单的。

当我第一次开始销售软件时,我对盗版等非常偏执。我并不是说你们的目的是一样的。但我得出的结论是,人们通常不会弄乱他们的系统时间,因为它会搞乱他们计算机上的许多其他东西,所以不值得这么麻烦。当然,不同的应用程序会有不同的完整性要求,但我只是想添加这一点。

  • @Stephen,我特别指出,Environment.TickCount 在重新启动时会重置。至于服务是否不可用 - 如果应用程序需要这种完整性级别,则不应允许其离线运行。 (2认同)