如何检测我的应用是为“所有用户”安装的还是仅为一位用户安装的。
今天,我检查安装程序中的文件Environment.SpecialFolder.CommonApplicationData或Environment.SpecialFolder.ApplicationData由我的安装程序放置的文件。
有没有更好的办法?
扩展 Sachin Gaur 的回答:
S-1-5-18 (*)文件夹用于本地系统用户 - 在为所有用户安装时使用。当前用户的安装会将产品密钥放在以该用户的安全标识符 (S-something-else) 命名的文件夹中。
要获取当前用户的 SID,请使用System.Security.Principal.WindowsIdentity.GetCurrent()来获取WindowsIdentity. 然后,使用该User属性获取SecurityIdentifier. 然后用于ToString()获取字符串值。
有关用于访问注册表的 GetValue 方法,请参阅MSDN。
(*) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\
| 归档时间: |
|
| 查看次数: |
2910 次 |
| 最近记录: |