我已经编写了一个应用程序,我想向它添加一个注册密钥/序列号(我很喜欢最小的不便 - 在这篇 Eric Sink 文章中的 ala #4 )。我的问题是关于应用程序注册后在哪里存储“激活”。据我了解,我在将密钥存储在所有用户都可以读取的公共场所(但需要管理员权限才能保存)和存储每个用户激活(但随后每个用户都在计算机将必须独立激活)。这给了我两个选择:
- 某些具有本地管理员权限的用户激活产品。激活存储在 HKLM、程序文件夹或其他所有用户都可以阅读的位置,并且为所有用户激活产品。
- 用户(有或没有管理员权限)激活产品。激活存储在以用户为中心的某个地方(每个用户的 app.config、HKCU 等)。优点是用户不必是管理员。缺点是如果有 6 个用户使用计算机,每个用户都必须激活产品。他们每个人都可以重复使用同一个序列号,但他们仍然必须输入它。
这真的是取舍吗?如果是,其他人做了什么?作为一名开发人员,我习惯了人们成为本地管理员,但在现实世界中,我不希望我的许多公司用户成为本地管理员,这使我倾向于选项 2。计算机不经常共享足够我不应该担心吗?
同样,我不是在问如何物理注册计算机 - 我并不担心。我只会对提供的密钥进行校验和并给予批准,因为我希望尽可能地非侵入性。