我对这个问题的第一个解决方案是使用 OS/BIOS 计时器并使用加密的日期文件检查它(见下面的伪代码)
public void CheckFrequently()
{
DateTime registeredDate = ReadFromBiosOrOSTimer();
DateTime readEncryptedDate = ReadFromEncryptedFile();
if(registeredDate >= readEncryptedDate)
{
ShowExpireDateForm();
CloseProgram();
}
}
在这种情况下,很明显用户可以轻松更改 OS/BIOS 计时器,而我的方法不起作用。
我的问题是:
- 有什么方法可以解决用户操作系统/BIOS 定时器更改问题?
- 有没有更好的方法来为 .Net 项目设置到期日期?