我想通过C#应用程序添加/编辑注册表项。
我尝试了此操作,但未添加密钥:
Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.CurrentUser.CreateSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Serialize");
key.SetValue("Startupdelayinmsec", "dword:00000000");
key.Close();
}
代码应添加以下密钥:
[HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Serialize] “ Startupdelayinmsec” = dword:00000000
我不确定,但是可能是因为使用Microsoft.Win32.RegistryKey时是64系统。
预先感谢您的帮助!
答案 0 :(得分:0)
首先,调用“失败”还是成功,但是之后您看不到密钥?如果您显示的代码中的任何调用失败,则它们应该引发异常。
第二,SetValue调用的语法错误。第二个参数应该是将值设置为的对象,而不是代表值和其类型的字符串,这就是您要执行的操作。换句话说,将其更改为:
key.SetValue("Startupdelayinmsec", 0);
或者如果您想指定新值的确切类型,则此:
key.SetValue("Startupdelayinmsec", 0, RegistryValueKind.DWord);
此外,正如其他人在评论中指出的那样,您将需要更改注册表的权限。以管理员身份登录可能还不够。您可能还需要以管理员身份运行您的应用。