Cla*_*ack 5 c# registry windows-vista
我将应用程序设置存储在HKEY_LOCAL_MACHINE\SOFTWARE\MyCompany分支下.不同用户的设置必须相同,这就是设置不在HKEY_CURRENT_USER下的原因.注册表值仅在使用应用程序期间读取.
现在,在Windows Vista中,由于UAC,您不能再使用以下代码来读取注册表值:
RegistryKey myKey = Registry.LocalMachine.CreateSubKey
("SOFTWARE\\MyCompany\\MyAppName");
Run Code Online (Sandbox Code Playgroud)
如何在我的代码(C#)中读取LocalMachine分支的值?
问题是你正在尝试创建一个不读它的密钥.如果使用适当的API,您应该可以在Vista上读取HKLM中的值.
RegistryKey myKey = Registry.LocalMachine.OpenSubKey(
@"Software\MyCompany\MyAppName",
false);
Run Code Online (Sandbox Code Playgroud)
注意上面的false参数.这具有在只读模式下打开键的效果.这是OpenSubKey的默认设置,但我更喜欢显式(主要是因为我不记得默认设置).
| 归档时间: |
|
| 查看次数: |
10976 次 |
| 最近记录: |