[CMake] vs2010 MANIFESTUAC not handled correctly

Aaron_Wright at selinc.com Aaron_Wright at selinc.com
Thu Mar 17 11:29:01 EDT 2011


Well I tried looking at the code and found cmVS10LinkFlagTable.h was the 
only file to mention MANIFESTUAC. But I can't figure out a simple fix. It 
pretty obvious this entry in the table is way to simple:

{"UACUIAccess", "MANIFESTUAC:", "Enable User Account Control (UAC)", "", 
cmVS7FlagTable::UserValueRequired}

It seems to just take whatever is after the colon and stuff it in the 
UACUIAccess element in the project. But it needs to be smarter than that. 
The MSDN page (http://msdn.microsoft.com/en-us/library/bb384691.aspx) says 
it could have the form of:

"level=[ asInvoker | highestAvailable | requireAdministrator ] uiAccess=[ 
true | false ]"

Which isn't a simple "//Bool Properties With Argument". Thoughts?
---
Aaron Wright

cmake-bounces at cmake.org wrote on 03/15/2011 08:23:55 AM:

> From: Aaron_Wright at selinc.com
> To: cmake at cmake.org
> Date: 03/15/2011 08:24 AM
> Subject: [CMake] vs2010 MANIFESTUAC not handled correctly
> Sent by: cmake-bounces at cmake.org
> 
> I'm trying to use this in my CMake file for a simple executable:
> 
> SET_TARGET_PROPERTIES(
>         your_executable 
>         PROPERTIES LINK_FLAGS 
"/MANIFESTUAC:\"level='requireAdministrator' 
> uiAccess='false'\"")
> 
> This worked in vs2008, but not in vs2010. The project contains:
> 
> <UACUIAccess>level='requireAdministrator' uiAccess='false'</UACUIAccess>
> 
> But needs:
> 
> <UACExecutionLevel>requireAdministrator</UACExecutionLevel>
> <UACUIAccess>false</UACUIAccess>
> 
> Am I using this the correct way, or is there a way to do it to get the 
> desired results?
> ---
> Aaron Wright
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at http://www.kitware.com/
> opensource/opensource.html
> 
> Please keep messages on-topic and check the CMake FAQ at: http://
> www.cmake.org/Wiki/CMake_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake



More information about the CMake mailing list