Procedura: Modificare le proprietà e le destinazioni del progetto C++ senza modificare il file di progetto

È possibile ignorare le proprietà e le destinazioni del progetto al prompt dei comandi di MSBuild senza modificare il file di progetto. Ciò è utile quando si intende applicare alcune proprietà in modo temporaneo o occasionalmente. Si presuppone una conoscenza di MSBuild. Per altre informazioni, vedere MSBuild.

Importante

È possibile usare l'Editor XML in Visual Studio o qualsiasi editor di testo per creare il file con estensione props o targets. Non usare Gestione proprietà in questo scenario perché aggiunge le proprietà del file di progetto.

Per ignorare le proprietà del progetto:

  1. Creare un .props file che specifica le proprietà di cui si vuole eseguire l'override.

  2. Dal prompt dei comandi: set ForceImportBeforeCppTargets="C:\sources\my_props.props"

Per ignorare le destinazioni del progetto:

  1. Creare un .targets file con la relativa implementazione o una destinazione specifica

  2. Dal prompt dei comandi: set ForceImportAfterCppTargets ="C:\sources\my_target.targets"

È anche possibile impostare una delle opzioni nella riga di comando di msbuild usando l'opzione /p: :

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

L'override di proprietà e destinazioni in questo modo equivale ad aggiungere le importazioni seguenti a tutti i .vcxproj file nella soluzione:

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