CMake 使用
使生成的exe程序默认以管理员权限启动
-
MSVC
SET_TARGET_PROPERTIES(projectname PROPERTIES LINK_FLAGS "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\" /SUBSYSTEM:WINDOWS")
-
GCC
需要添加.rc
和.manifest
文件
示例:
uac.rc
:#include <winuser.h> 1 RT_MANIFEST uac.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>
target_sources(xxx PRIVATE xxx/uac.rc)