Guide pratique pour modifier les propriétés et cibles du projet C++ sans modifier le fichier projet

Vous pouvez remplacer les propriétés et les cibles de projet à partir de l’invite de commandes MSBuild sans changer le fichier projet. Cela est utile quand vous voulez appliquer certaines propriétés temporairement ou occasionnellement. Vous devez être familiarisé avec MSBuild. Pour plus d’informations, consultez MSBuild.

Important

Vous pouvez utiliser l’éditeur XML dans Visual Studio, ou n’importe quel éditeur de texte, pour créer le fichier .props ou .targets. N’utilisez pas le Gestionnaire de propriétés dans ce scénario, car il ajoute les propriétés au fichier projet.

Pour remplacer les propriétés de projet :

  1. Créez un .props fichier qui spécifie les propriétés à remplacer.

  2. À partir de l’invite de commandes : set ForceImportBeforeCppTargets="C:\sources\my_props.props"

Pour remplacer les cibles de projet :

  1. Créer un .targets fichier avec son implémentation ou une cible particulière

  2. À partir de l’invite de commandes : set ForceImportAfterCppTargets ="C:\sources\my_target.targets"

Vous pouvez également définir l’une ou l’autre option sur la ligne de commande msbuild à l’aide de l’option /p: :

msbuild myproject.sln /p:ForceImportBeforeCppTargets="C:\sources\my_props.props"
msbuild myproject.sln /p:ForceImportAfterCppTargets="C:\sources\my_target.targets"

La substitution des propriétés et des cibles de cette façon équivaut à ajouter les importations suivantes à tous les .vcxproj fichiers de la solution :

<Import Project="C:\sources\my_props.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<Import Project="C:\sources\my_target.targets" />