我正在尝试在我使用CMake和Visual Studio构建的可执行文件上设置RequireAdministrator清单标记。
关于如何指示CMake设置该选项的任何想法?
谢谢!
Billy3
答案 0 :(得分:11)
我很欣赏这个问题被标记为visual-studio-2008,但对于VS2010,这会产生以下错误消息:
错误MSB4030:" level =' requireAdministrator' uiAccess ='假'"是" UACUIAccess"的无效值。 " Link"的参数任务。 " UACUIAccess"参数的类型为" System.Boolean"。
VS2010的等效CMake命令(忽略/ SUBSYSTEM:WINDOWS部分)是
SET_TARGET_PROPERTIES(your_executable PROPERTIES LINK_FLAGS "/level='requireAdministrator' /uiAccess='false'")
答案 1 :(得分:6)
试试这个:
SET_TARGET_PROPERTIES(your_executable PROPERTIES LINK_FLAGS "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\" /SUBSYSTEM:WINDOWS")
答案 2 :(得分:0)
如果是控制台应用,则需要删除“/SUBSYSTEM:WINDOWS”。
试试这个:
set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS " /MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\" ")