访问本地计算机在Windows 7

问题描述:

我要创建在Windows 7在本地机器配置单元注册表项我用下面的代码才能做到这一点:访问本地计算机在Windows 7

RegistryKey regKey = Registry.LocalMachine.CreateSubKey(@"Software\Test", RegistryKeyPermissionCheck.ReadWriteSubTree); 

代码运行没有任何错误罚款。但是当我使用regedit.exe查看我的注册表时,我没有看到我刚刚创建的密钥。任何人都可以帮助我。

问候

在所有的可能性你的应用程序运行没有清单,并写入HKLM的虚拟副本。要测试我的理论,请右键单击您的exe并选择以管理员身份运行。如果它然后写入正确的区域,这就是发生了什么。

如果出现这个问题,或者改变主意写作HKLM(用户不喜欢UAC提示),或者在需要管理员的exe文件上放置一个清单,以便始终请求提升并正常工作。

+0

创建密钥我已经把清单与抬高到我的exe文件。但我再也看不到注册表中的密钥。有趣的是,我的密钥是我创建的,我可以使用它。但我无法从注册表中看到它。 exe文件以管理员身份执行。 – 2010-06-14 18:13:54

+0

您是否在'HKEY_USERS \ _Classes \ VirtualStore \ Machine \ Software \ Test'中查看它是否正在写入? – 2010-06-14 18:36:02

您的密钥名称的长度是多少? regedit中有一个已知的错误,它不会让你看到名称超过256个字符的键。

你是在64位机器上吗?

如果您使用的是64位机器,请检查您的项目构建设置(项目属性>构建选项卡)并检查平台目标。

如果平台目标设置为86,你是一个64位机的关键将根据“Wow6432Node”

在REGEDIT.EXE看在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node创建上,你应该有看到你的关键。

改变平台目标Any CPU,它会在HKEY_LOCAL_MACHINE\SOFTWARE