一、项目中配置
方法一:mingw编译器
在QT的pro工程文件中加入:
RC_FILE=main.rc
新建一个rc文件,main.rc文件内容如下:
IDI_ICON1 ICON DISCARDABLE "./res/logo.ico"
1 24 uac.manifest
其中,第一行是为程序添加icon的,第二行是增加权限,注意是manifest。
新建一个manifest文件,uac.manifest 文件内容如下:
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level='requireAdministrator' uiAccess='false' />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
在VS编译器上这样用会报错,VS编译器请看第二种方法。
方法二:VS编译器
在QT工程文件pro中加入QMAKE_LFLAGS的增加配置:
QMAKE_LFLAGS += /MANIFESTUAC:\"level=\'requireAdministrator\' uiAccess=\'false\'\"
方法三:CMAKE
需要放在add_executable的后面
set_target_properties(
${PROJECT_NAME} PROPERTIES LINK_FLAGS "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\" /SUBSYSTEM:WINDOWS"
)
二、使用添加管理员权限的小工具
工具一:
工具二:
执行方式:
start cmd /k " mt.exe -manifest "RunningPermission" -outputresource:"iphelper.exe";#1 &&taskkill /f /t /im cmd.exe"
https://download.csdn.net/download/weixin_39568531/12244748