在App数据文件夹中存储c#应用程序许可证信息和其他凭据

时间:2015-11-23 05:19:24

标签: c# .net licensing appdata

我想实现我的.NET应用程序的试用版,我遇到了涉及在app数据文件夹中保存日期的解决方案。 我所遇到的问题与该解决方案有关,我会在那里发表评论,但我没有足够的信用评论。

因此,我所遵循的解决方案基本上将创建日期和上次打开日期保存在App Data文件夹中的文件夹中。如果文件夹不存在,则先创建一个文件夹,然后检查其有效性。这一切都非常好,而且有效。

我想知道的是:

1)如果受过教育的用户导航到app数据文件夹并删除该文件夹,该怎么办?我的解决方案将创建一个新文件夹,然后就像重新开始一样。那将是什么解决方案?我只能想到将这些凭据保存在不同的文件夹中并检查所有这些凭据。或者也许在安装过程中创建该文件夹和凭据(我不知道如何使用,我在Visual Studio中使用InstallSheild向导)。那么关于这个的任何想法?

2)如果最初我给了客户30天的试用期,我正在从该文件夹中读取日期然后验证。然后,某个时候客户购买年度订阅或其他东西。如何迎合这种变化?我可以更改代码中的验证标准(我认为这也不是很好)但更重要的是我如何重置app数据文件夹呢?因此,一年的验证从新的安装/更新日期开始。

我在开发.NET应用程序方面经验很少,在处理许可证等方面的经验也很少。如果存在,请让我知道更好的方法。

2 个答案:

答案 0 :(得分:0)

  1. 您需要将文件隐藏在秘密文件夹/注册表中。

  2. 您可以将订阅信息存储到与应用程序相同的文件夹中的文件中。您的应用将首先检查此文件,如果该文件不存在,我们将检查跟踪文件。

答案 1 :(得分:0)

我找到的最佳解决方案是内置于Visual Studio中的。

只需进入项目属性并选择设置即可。

添加要保存的字段。就我而言,它们是已安装和最后打开的日期。并将范围设置为User。

您现在可以通过Properties.Settings.Default访问这些字段。%propertyname% 并根据需要进行验证和设置值。

最后只保存设置。

设置保存在隐藏的应用程序数据文件夹中,因此可以安全地防止用户干预。