pea*_*dog 6 c# registry registrykey
所以我使用RegEdit将以下内容添加到我的工作站上的注册表中:
HKLM\SOFTWARE \富\酒吧
Bar有一对k/v对"wtf"/"idk".我通过关闭注册表并重新打开它来验证这些更改是"采取"的.嘿,他们还在那里!胀.
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Foo\Bar");
if (key != null)
{
var = key.GetValue("wtf").ToString();
}
Run Code Online (Sandbox Code Playgroud)
问题是,key为null.
什么时候...
Registry.LocalMachine.OpenSubKey("Software").GetSubKeyNames()
Run Code Online (Sandbox Code Playgroud)
被称为,Foo不会出现在众多的SubKeyNames中.
所以,我显然错过了一些愚蠢的东西.具体到底我错过了什么?
Mar*_*age 13
如果您在64位版本的Windows上运行32位进程,则32位进程(您的测试应用程序)并不总是能够使用64位regedit查看您创建的密钥.
尝试将应用程序作为64位运行,或使用regedit使用路径打开密钥HKLM\SOFTWARE\Wow6432Node\Foo\Bar.
您可以在MSDN上的注册表中阅读有关32位和64位应用程序数据的更多信息.
| 归档时间: |
|
| 查看次数: |
4600 次 |
| 最近记录: |