关于C#中以管理员身份运行程序的说明

在使用C#编写程序时,如果程序是需要在Windows 7以上的操作系统上运行,有时会需要以管理员身份才能正常启动,否则会因为权限不足而出错,那如何让我们的程序自动提示以管理员身份运行呢?
我们可以按照以下方法进行操作。

一:在Visual Studio中–解决方案资源管理器–右键项目名称–属性,找到“安全性”选项:
csharp-admin-run-1

二:勾选“启用ClickOnce安全设置”并保存:
csharp-admin-run-2

三:这时,在项目下面会多出一个“app.manifest”的文件:
csharp-admin-run-3
选中它打开,并找到代码段:

<requestedExecutionLevel level="asInvoker" uiAccess="false" />

将其改为:

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

csharp-admin-run-4
将上图红框部分修改为:
csharp-admin-run-5

四:改正保存后,不要急于重新编译生成,再次打开“属性–安全性”界面,将“启用ClickOnce安全设置”前面的勾去掉并保存后再编译运行:
csharp-admin-run-6

五:最后,保存修改,重新编译运行程序。

完成以上操作后再打开程序时,会提示“用户账户控制”来获取管理员权限运行,点击“是”则获取了管理员权限。

发表回复