使用RegistryKey.OpenSubKey()的SecurityException

时间:2013-04-15 23:31:03

标签: c# .net

此行有效:

RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(
    baseKeyName + subKey, RegistryKeyPermissionCheck.ReadWriteSubTree);

虽然这些行产生SecurityException - Requested registry access is not allowed on the OpenSubKey行:

RegistryKey baseKey = RegistryKey.OpenBaseKey(
   RegistryHive.LocalMachine, RegistryView.Registry32);
RegistryKey registryKey = baseKey.OpenSubKey(
   baseKeyName + subKey, RegistryKeyPermissionCheck.ReadWriteSubTree);

在同一台Win7机器上。

我这样做是因为在'真正的'代码中有一个条件,它将在64位机器上使用Registry64 RegistryView。

任何人有任何想法或解决方法吗?

1 个答案:

答案 0 :(得分:0)

除非以管理员身份提升应用程序,否则不允许写入LocalMachine注册表区域。