Udostępnij za pośrednictwem


Instrukcje: modyfikowanie właściwości i obiektów docelowych projektu C++ bez zmieniania pliku projektu

Właściwości i obiekty docelowe projektu można zastąpić z poziomu wiersza polecenia msBuild bez zmiany pliku projektu. Jest to przydatne, gdy chcesz tymczasowo lub od czasu do czasu zastosować niektóre właściwości. Przyjęto założenie, że istnieje pewna wiedza na temat programu MSBuild. Aby uzyskać więcej informacji, zobacz MSBuild.

Ważne

Możesz użyć edytora XML w programie Visual Studio lub dowolnego edytora tekstów, aby utworzyć plik props lub targets. Nie używaj Menedżera właściwości w tym scenariuszu, ponieważ dodaje właściwości do pliku projektu.

Aby zastąpić właściwości projektu:

  1. .props Utwórz plik, który określa właściwości, które chcesz zastąpić.

  2. W wierszu polecenia: set ForceImportBeforeCppTargets="C:\sources\my_props.props"

Aby zastąpić cele projektu:

  1. .targets Tworzenie pliku z ich implementacją lub określonym celem

  2. W wierszu polecenia: set ForceImportAfterCppTargets ="C:\sources\my_target.targets"

Możesz również ustawić jedną z opcji w wierszu polecenia msbuild przy użyciu /p: opcji:

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

Zastępowanie właściwości i obiektów docelowych w ten sposób jest równoważne do dodawania następujących importów do wszystkich .vcxproj plików w rozwiązaniu:

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