灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2136回复:0

让.net程序自动运行在管理员权限下

楼主#
更多 发布于:2011-12-30 17:49
如何让.net程序自动运行在管理员权限下 VS2010 c# 编译的WINFORM程序 在Win7 以管理员身份运行

       windows 7和vista提高的系统的安全性,同时需要明确指定“以管理员身份运行”才可赋予被运行软件比较高级的权限,比如访问注册表等。否则,当以普通身份运行的程序需要访问较高级的系统资源时,将会抛出异常。
  如何让程序在启动时,自动要求“管理员”权限了,我们只需要修改app.manifest文件中的配置项即可。
  app.manifest文件默认是不存在的,我们可以通过以下操作来自动添加该文件。
        (1)进入项目属性页。
        (2)选择“安全性”栏目。
        (3)将“启用ClickOnce安全设置”勾选上。
  现在,在Properties目录下就自动生成了app.manifest文件,打开该文件,将 trustInfo/security/requestedPrivileges节点的requestedExecutionLevel的level 的值修改为requireAdministrator即可。如下所示:
    <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
         <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> ;
    </requestedPrivileges>

   (4)记住,如果不需要ClickOnce,可以回到项目属性页将“启用ClickOnce安全设置”不勾选。
   (5)接下来,重新编译你的程序就OK了。


喜欢0 评分0
游客

返回顶部