2012-04-26 126 views
8

我有一个C#应用程序,我试图通过注册表编辑服务。我正在使用需要管理员权限的清单文件来运行我的应用程序。尽管如此,这个代码抛出System.UnauthorizedAccessException: Cannot write to the registry keyC#设置注册表值抛出UnauthorizedAccessException

RegistryKey key = Registry.LocalMachine.OpenSubKey ("SYSTEM\\CurrentControlSet\\services\\Tomcat7"); 
key.SetValue ("Start", 2, RegistryValueKind.DWord); 

是否有人对如何解决这一问题的任何想法?

+3

这可能帮助,看起来像您正在打开只读的关键http://stackoverflow.com/questions/2732126/deletesubkey-unauthorizedaccessexception Google是你的朋友。 – 2012-04-26 19:27:04

+0

当然句话之后B,你弹出放在这里googleing一个问题前的伟大工程,更快的方式,甚至比在它的最好的计算器...我真的只是复制你的主题,它粘贴到谷歌和答案是第二连杆:) – 2012-04-26 19:47:43

+0

感谢您的埃里克,太糟糕了,我做了一些搜索,没有遇到它。我所发现的一切都是关于提升权限的需要。 – Nik 2012-04-26 19:55:43

回答

15

PLZ遵循下面的代码,请注意额外true说法:

RegistryKey key = Registry.LocalMachine.OpenSubKey("SYSTEM\\CurrentControlSet\\services\\Tomcat7",true); 
key.SetValue("Start", 2, RegistryValueKind.DWord); 
相关问题