Windows 下 Qt 可执行程序添加默认管理员权限启动(QMAKE、MinGW & MSVC)

记录 Qt/QMAKE 为可执行程序添加管理员权限

MSVC

Windows下 MSVC 套件地位超然,只需要在 .pro 文件中加入:

bash 复制代码
QMAKE_LFLAGS += /MANIFESTUAC:\"level=\'requireAdministrator\' uiAccess=\'false\'\"

重新构建

MinGW

与MSVC相比,MinGW所需的操作略微繁琐;

  • 创建 .manifest 文件,如:adminboot.manifest,加入以下内容:
xml 复制代码
<?xml version="1.0"?>
<n1:assembly xmlns:n1="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <n2:trustInfo xmlns:n2="urn:schemas-microsoft-com:asm.v3">
        <n2:security>
            <n2:requestedPrivileges>
                <n2:requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
            </n2:requestedPrivileges>
        </n2:security>
    </n2:trustInfo>
</n1:assembly>
  • 创建 .rc 文件,如:adminboot.rc,加入以下内容:
bash 复制代码
1 24 "adminboot.manifest"
  • 将两个文件放到 .pro 文件同级目录
  • .pro 文件中加入 RC_FILE = adminboot.rc
  • 重新构建

注意:重新编译后,可执行文件需管理员权限启动,所以如果想在QtCreator中启动可执行程序的话,需要以管理员权限启动QtCreator

相关推荐
獭.獭.9 分钟前
C++ -- STL【unordered_set和unordered_map的使用】
c++·stl·unordered_map·unordered_set
公子无缘15 分钟前
【Windows】关闭Windows Update自动更新2
windows
star _chen1 小时前
C++ std::move()详解:从小白到高手
开发语言·c++
福尔摩斯张1 小时前
C++核心特性精讲:从C语言痛点出发,掌握现代C++编程精髓(超详细)
java·linux·c语言·数据结构·c++·驱动开发·算法
刺客xs1 小时前
Qt----事件简述
开发语言·qt
2739920291 小时前
QButtonGroup (Qt)
qt
程序员-King.1 小时前
【Qt开源项目】— ModbusScope-进度规划
开发语言·qt
charlie1145141912 小时前
如何快速在 VS2026 上使用 C++ 模块 — 完整上手指南
开发语言·c++·笔记·学习·现代c++
gugugu.2 小时前
Redis Set类型完全指南:无序集合的原理与应用
数据库·windows·redis
报错小能手2 小时前
STL_unordered_map
开发语言·c++·哈希算法