2009-10-31 6 views
5

J'essaie de définir l'indicateur de manifeste RequireAdministrator sur un exécutable que je construis avec CMake et Visual Studio.CMake RequireAdministrator

Des idées sur comment diriger CMake pour définir cette option?

Merci!

Billy3

Répondre

6

essayez ceci:

SET_TARGET_PROPERTIES(your_executable PROPERTIES LINK_FLAGS "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\" /SUBSYSTEM:WINDOWS") 
+0

Works aussi longtemps que supprimer/SUBSYSTEM: Windows ... c'est une application de la console :) –

+0

Notez que ces Les paramètres du manifeste ne semblent pas apparaître dans les propriétés du projet, mais ils apparaissent dans le manifeste intermédiaire. Et ils sont enregistrés dans le fichier .vcproj. (C'est avec VS2008). –

11

Je comprends que la question est étiqueté message visuel-studio-2008, mais pour VS2010 ce produit l'erreur suivante:

erreur MSB4030 : "level = 'requireAdministrator' uiAccess = 'false'" est une valeur invalide pour le paramètre "UACUIAccess" de la tâche "Link". Le paramètre "UACUIAccess" est de type "System.Boolean".

Une commande équivalente CMake (sans tenir compte du/SUBSYSTEM: partie WINDOWS) pour VS2010 est

SET_TARGET_PROPERTIES(your_executable PROPERTIES LINK_FLAGS "/level='requireAdministrator' /uiAccess='false'") 
+0

Merci. J'aimerais pouvoir l'emporter plus d'une fois. – Abyx