C#开发的软件在启动时自动以管理员权限运行

推荐方式,通过配置程序的清单文件,让系统在启动程序时自动请求管理员权限,发布后也能生效。
 

操作步骤:

  1. 添加清单文件:
    在 Visual Studio 中右键你的项目 → 「添加」→「新建项」→ 搜索「应用程序清单文件」(Application Manifest File)→ 命名为app.manifest(默认名称)并添加。
     
  2. 修改权限配置:
     
    打开刚添加的app.manifest文件,找到以下节点并修改:
    <?xml version="1.0" encoding="utf-8"?>
    <assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
      <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
      <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
          <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
            <!-- 核心修改:将 level 改为 requireAdministrator -->
            <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
          </requestedPrivileges>
        </security>
      </trustInfo>
    </assembly>
    • level="requireAdministrator":强制要求管理员权限启动
    • level="asInvoker":默认值,使用当前用户权限启动
    • level="highestAvailable":使用当前用户能获取的最高权限(如果用户是管理员则提权,否则普通权限)
     
  3. 设置项目使用该清单文件:
     
    右键项目 → 「属性」→「应用程序」→「资源」→「清单」→ 选择你刚添加的app.manifest → 保存并重新生成项目。
posted @ 2026-01-21 16:53  韩银剑  阅读(1)  评论(0)    收藏  举报