我已经创建了产品并为此生成了许可证 key ,但是我想在30天后询问该 key 。我已经用注册表值存储了日期,并在其中添加了30天。但是我发现如果用户在我的逻辑不起作用的30天前更改系统日期。
那么,有没有针对试用版软件的解决方案,而无需检查系统日期并且仅允许30天的试用期?
最佳答案
每天使用一次之后,您可能会拥有另一个递增的注册表项。这样,即使他们更改了计算机的日期,该键也会向您的程序表明它已经运行了30天以上。
此外,可以对该值进行加密,以便如果用户尝试手动更改它,则程序将无法运行,因为它无法解密该值并从中获取有效的数字。
要避免重新安装,您可以向使用该应用程序的特定版本唯一的应用程序的试用版保存的任何文件中添加一些信息(可能是安装时的时间戳)。当您的应用程序的试用版尝试打开文件时,它将检查此签名并确保它是使用同一实例创建的,否则拒绝打开文件。从本质上讲,这根本没有能力简单地重新安装该应用程序并继续使用它。
到最后,用户可以完全控制自己的计算机,并且可能可以找到解决您想要做的事情的方法(在允许用户使用该应用程序之前,无需访问保留这些详细信息的Web服务) )。您可能不应该花费太多精力试图阻止愿意经历这种额外麻烦的家伙,而应该花更多的时间/金钱/精力为愿意付费的人改善应用程序。
关于c# - 如何将我的产品作为试用版使用30天?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1525378/