Microsoft.Cpp.Default.props
これは役立つかもしれません: 私はこれを調査していましたが、最終的に、次の場所にある(このバージョンの Visual Studio の 21 行目) を調べて、インストールの既定のプラットフォームを突き止めましたProgram Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120
。
<Platform Condition="'$(Platform)' == ''">Win32</Platform>
これは、VS12 (Visual Studio 2013) では、他のプラットフォームが明示的に指定されていない場合、MSBuild が Win32 をプラットフォームとして選択することを意味します。他のいくつかの質問で述べたように、という名前の環境変数を設定するPlatform
と、デフォルトが設定した値に変更されます。
重要な注意事項: プロジェクト ファイルではなく Visual Studio ソリューション ファイル (*.sln) で MSBuild を呼び出し、MSBuild 引数でプラットフォームを指定しない場合、MSBuild はプラットフォームに基づいてプラットフォームを自動的に選択するように見えます。SolutionConfigurationPlatforms
ソリューション ファイルのグローバル セクションの下の最初のエントリ。これはどこにも文書化されていませんが、実験からそう思われます。つまり、プロジェクト ファイルを編集し、別の既定のプラットフォーム プロパティを指定すると (上記のように)、MSBuild はこの既定値を無視します。これは、プロジェクトの参照を開始する前に既にプラットフォームが選択されているためです。プロジェクト ファイルで MSBuild を直接呼び出すと、この動作が回避されるようです。