让C#程序自动以管理员方式运行

方法一:

在“项目”上 添加“新项” 选择“应用程序清单文件” 然后单击“添加”按钮添加后,默认打开app.manifest文件,将:<requestedExecutionLevel  level="asInvoker" uiAccess="false" />

修改为:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />然后打开“项目属性” ,将“应用程序” 标签页中的“资源”中的“清单”修改为新建的 app.manifest。

重新生成项目,再次打开程序时就会提示需要以管理员权限运行。

方法二:

最近在用C#做一个简单的小软件时,发现软件在XP、和Windows 2003下面运行都很正常,在Win7下面双击打开,却会出问题,导致软件不能使用。把软件打开时“以管理员方式运行”,软件正常运行,看来啊,还是得默认就给软件加上管理员运行权限。

那该怎么做呢?

其实也非常简单,点击右键,打开项目属性->安全性选项,如下图所示:

首先启用ClickOnce安全设置,然后选中这是部分可信的应用程序,再点击编辑权限,编辑生成的“app.manifest”文件。

将app.manifest文件中的这句代码中的level

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

改为如下:

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

保存app.manifest文件,然后再将项目属性安全性选项中的启用ClickOnce安全设置去掉,重新编译项目即可,不去掉的话,是没法编译通过的哦。生成好后,软件就自动带上了那个安全图标了哦,如下图:

再点击,就会自动弹出那个用户账户控制对话框,选中是就可以了。

posted @ 2013-11-05 14:15  HaoYuLiao  阅读(1157)  评论(0编辑  收藏  举报