回答
尝试打开带有写权限的RegistryKey
。如果它给你一个Exception
,你没有权限。 你甚至可以指定某个特定的例外,表示你没有权限。
注册表中的每个节点都有自己的ACL(Access Credential List)。没有一个权利。
通常,每个应用程序在HKLM配置单元或HKCU配置单元中都有自己的注册表节点,或者两者都有。
在前一种情况下,用户必须是计算机的管理员,后者用户可以读/写自己的注册表。
要检查实际访问权限,可以使用RegistryKey.GetAccessControl
method。
但是,如上所述,您必须具有至少读取权限才能调用此方法。
我在做 var temp = registryKey.GetAccessControl(); 但在临时它不是给我说读或写的价值? – 2012-07-08 12:11:35
var temp = registryKey.GetAccessControl()。AccessRightType – 2012-07-08 12:12:47
用户应该无权编辑“完整注册表”,他们只应具有编辑注册表中某些键的权限。
你最好做一个尝试捕捉系统
try{
// Do registry edit
}
catch {
Console.Log("Sorry you don't have permission to edit this key");
}
每个用户都是不同的,可以访问某些部分,全部或部分使用Windows ACL注册表的任何部分。
看看这里的first answer。
try{
Registry.CurrentUser.OpenSubKey(@"PATH\TO\STUFF", true);
// Have write permissions.
}
catch {
// Do not have write permissions.
}
- 1. 编辑注册表
- 2. 编辑注册表值
- 3. C++ Windows注册表编辑
- 4. 编辑注册表中Vb.net
- 5. 编辑注册表值
- 6. 编辑windows注册表
- 7. 设计注册用户角色编辑?
- 8. 编辑与C#中的注册表,但无法找到注册表编辑器
- 9. C#编辑注册表不起作用
- 10. 当用户注销时在注册表中编辑用户配置文件
- 11. 如何确定注册表项是否被WOW64重定向?
- 12. 无法编辑Instagram客户端注册
- 13. 注册表权限
- 14. 编辑类 - 其他用户的注册表
- 15. 是否有某种Java注册表?
- 16. 检查用户名是否已注册
- 17. simpleSAMLphp是否也支持用户注册?
- 18. 异常的注册表编辑器
- 19. TFS注册表编辑器需要
- 20. 在Python中编辑Windows 7注册表?
- 21. 注册表项编辑vb6启动
- 22. 注册表编辑器 - 进口的* .reg
- 23. 在VB.NET中编辑注册表
- 24. WMI:远程编辑注册表
- 25. 无法在c#中编辑注册表?
- 26. 注册表更改权限删除其他用户权限
- 27. 编辑注册表项并用批处理文件打开注册表
- 28. 编辑Magento商店的“创建账户”注册表
- 29. 确定是否有新的要求或编辑现有记录
- 30. 定制的用户注册表格
可能重复的[如何获得注册表写入权限在C#](http://stackoverflow.com/questions/721145/how-to-get-registry-write-permissions-in-c-sharp) – 2012-07-08 11:59:29