C# 在读写注册表或其他的敏感操作时,如果程序未获得管理员权限,操作会报错,可以在exe文件的属性页面里勾选【以管理员身份运行此程序】

那么怎么默认以管理员身份运行呢
方法一
在项目上右键,点击【属性】,点击【安全性】,勾选【启用ClickOnce安全设置】

此时在Properties下会自动生成一个名为【app.manifest】的文件,然后再取消勾选【启用ClickOnce安全设置】

打开【app.manifest】文件
将 <requestedExecutionLevel level="asInvoker" uiAccess="false" />
改为 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
方法二
在【Properties】上右键,【添加】->【新建项】

选择【应用程序清单文件】,点击【添加】

打开【app.manifest】文件
将 <requestedExecutionLevel level="asInvoker" uiAccess="false" />
改为 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />



















