当我使用以下代码时 My.Computer.Registry.LocalMachine.OpenSubKey(“SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run”,True).SetValue(Application.ProductName,Application.ExecutablePath)
添加一个注册表项以使我的程序自动启动,它可以在我的系统上运行,但是我发送给它的每个人都会收到一条“Unhandled Exception”消息,说明访问被拒绝。我想知道是否有解决方案。感谢
答案 0 :(得分:1)
您获得“拒绝访问”,因为如果您想要写入HKEY_LOCAL_MACHINE
密钥,则需要使用管理员权限运行您的应用。
您可以通过执行以下步骤强制您的应用仅运行,因此始终要求管理员权限:
在Visual Studio的Solution Explorer
窗口中右键单击您的项目,然后按Properties
。
确保您在Application
标签上,然后按下显示View Windows Settings
的按钮。
在编辑器中打开的app.manifest
文件中,找到以下内容:
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
并将其替换为:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />