方法: プロジェクト ファイルを変更せずに C++ プロジェクトのプロパティとターゲットを変更する

プロジェクト ファイルを変更することなく、MSBuild のコマンド プロンプトからプロジェクトのプロパティとターゲットをオーバーライドできます。 これは、一時的に、またはときどき一部のプロパティを適用する場合に便利です。 MSBuild のある程度の知識が必要です。 詳細については、「MSBuild」を参照してください。

重要

Visual Studio の XML エディターまたは任意のテキスト エディターを使って、.props ファイルまたは .targets ファイルを作成します。 プロパティ マネージャーはプロジェクト ファイルにプロパティを追加するため、このシナリオでは使わないでください。

プロジェクトのプロパティをオーバーライドするには:

  1. オーバーライドする .props プロパティを指定するファイルを作成します。

  2. コマンド プロンプトから次の操作を行います。 set ForceImportBeforeCppTargets="C:\sources\my_props.props"

プロジェクトのターゲットをオーバーライドするには:

  1. 実装または特定の .targets ターゲットを含むファイルを作成する

  2. コマンド プロンプトから次の操作を行います。 set ForceImportAfterCppTargets ="C:\sources\my_target.targets"

次のオプションを使用して、msbuild コマンド ラインでいずれかのオプションを /p: 設定することもできます。

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

この方法でプロパティとターゲットをオーバーライドすることは、ソリューション内のすべての .vcxproj ファイルに次のインポートを追加することと同じです。

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