-
Notifications
You must be signed in to change notification settings - Fork 0
Feuilles de propriétés
Roger Vuistiner edited this page Jul 17, 2024
·
1 revision
La paramétrage des projets C++ est basée sur les feuilles de propriétés de MSBuild.
On peut importer une feuille de propriétés dans un projet C++ directement depuis Visual Studio en utilisant le gestionnaire de propriétés:
- activer le gestionnaire de propriétés -
View/Other Windows/Property Manager
. - dans le menu contextuel du projet ou de l'une de ses configurations cliquer
Add existing property sheet...
. - choisir un fichier
.props
et le tour est joué.
On peut aussi générer des feuilles de propriétés depuis Visual Studio. Comme exemple, nous allons en créer une qui ajoute la macro _WIN32_WINNT=0x501
au preprocesseur C++.
- créer un projet C++ quelconque ou ouvrez un projet existant (on ne sauvera pas les modifications).
- activer le gestionnaire de propriétés -
View/Other Windows/Property Manager
. - afficher le menu contextuel de votre projet et aller dans
Add New Property Sheet...
. - nommer votre feuille de propriétés
NTVersion.XP.props
puis presserOK
. - aller dans dans le champ
(Name)
de l'explorateur de propriétés et remplacer la valeur actuelle parNT Version = XP
. - afficher le menu contextuel de la feuille de propriétés et aller dans
Properties...
. - activer l'onglet
C/C++
puisPreprocessor
. - dans le champ
Preprocessor definitions:
insérer_WIN32_WINNT=0x501;
puis presserOK
. - sauver la feuille de propriétés en pressant
Ctrl+S
.
Si on visualise le fichier généré (NTVersion.XP.props
), on devrait voir ceci:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_PropertySheetDisplayName>NT Version = XP</_PropertySheetDisplayName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>_WIN32_WINNT=0x501;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
Lors de cette opération, Visual Studio a aussi modifié le fichier du projet pour y stocker le lien vers cette feuille de propriétés:
...
<ImportGroup Label="PropertySheets" >
<Import Project="NTVersion.XP.props" />
</ImportGroup>
...
Le label PropertySheets
permet au gestionnaire de propriétés de rassembler et de hiérarchiser les feuilles de propriétés liées au projet.