我正在编写一个程序,我想包括一个免费的30天试用版。 我环顾了这个网站上的post,并决定让程序在Windowsregistry中保存到期date(而不是安装程序更新registry)。 在向HKLMconfiguration单元添加一个键和一个值之后,通过registry删除它,我设法搞砸了一个FTP程序,现在出错了,除非我说要以pipe理员身份运行它。 它给了我一个错误,提示该程序的用户特定信息configuration不正确。 我相信我损坏了registry,导致这一点。
两个问题:如果我只是想要把一个键和一些值添加到客户的registry中,那么我的机器上会出现什么问题?
另外,我正在使用RegistryOptions.Volatile选项使用RegisrtyKey.CreateSubKey。 我读这只是更新内存,而不是registry文件。 我认为这是testing我的function的好方法 – 设置子键和值,直到我重新启动我的机器。 当我从代码中获得所需的行为时,将其切换到RegisrtyOptions.None。 对此有什么想法?
在C#中更新注册表本身并不安全,至少不会比任何其他语言更为安全。 如果你没有触摸另一个程序使用的密钥,你可以做任何你想要的。
我会建议,如果你有问题,这只是一个巧合,它发生在你编辑注册表的同时。