描述
一个驱动程序在注册表中留下了一团糟(即使我从系统中卸载了它)。如果我检查安全设置,它不会在“组或用户名”中显示任何内容。当我检查所有者时,它只显示“无法显示当前所有者。”。当我想删除注册表项时,我必须:
取得所有权。
添加组。
删除密钥。
问题是每个注册表都有几个子键,我必须在每个键上重复这个过程。继承权限选项在注册表编辑器中不起作用。是的,我正在管理员模式下运行注册表编辑器。
问题
我想编写一个简单的 C# 代码来循环和删除所有键。我找到了一些代码示例,但在我的情况下,任何 OpenSubKey 调用都会失败并出现错误: System.Security.SecurityException:不允许请求的注册表访问。 如果任何 OpenSubKey 函数调用失败,我该如何更改所有权?是否有任何其他命令可以让我声明所有权然后删除注册表项?
谢谢你的支持