2

私は、vcproj (まあ、vcproj ファイルを含むソリューション) をビルドし、特定の vcproj ファイルの出力を特別な「パッケージ」ディレクトリにコピーしてファイル共有に公開する MSBuild ラッパー スクリプトを作成しようとしています。いくつかの構成とプラットフォーム (デバッグ、リリース、Win32、x64) に対してこれを行う必要があります。理想的には、特定の構成/プラットフォームの vcproj ファイルから「OutputDirectory」を読み取って、その内容をコピーできるようにしたいと考えています。csproj ファイルを使用すると、csproj ファイルを MSBuild ラッパー スクリプトに "インポート" し、"OutputPath" プロパティを読み取ることができるため、これは簡単です。残念ながら、vcproj (VS 2008 用) ファイルを MSBuild スクリプトにインポートすることはできません。MSBuild と互換性がないため、この方法は機能しません。

「OutputDirectory」プロパティの値をvcprojファイルから読み取る方法を知っている人はいますか? 生の OutputDirectory プロパティは "$(ProjectDir)\bin\$(ConfigurationName)\$(PlatformName)" のように見えるため、XPath を使用してこれを自分でロールしたくないことに注意してください。vcbuild を実行するときと同じように、これらすべてのマクロを展開したいと思います。

4

1 に答える 1

1

OutputPathなどの個別のプロパティ ファイルで構成ごとに 抽出しDebug.Properties, Release.Properties、vcproj と msbuild スクリプト ファイルの両方でディレクティブを使用して適切な構成をインポートできます。

<Import Project="Debug.Properties" />

または動的に構成に依存します。

<Import Project="$(ConfigurationBasedPropertiesFile)" />

$(ConfigurationBasedPropertiesFile)現在の構成を考慮してプロパティの値を設定します

于 2011-08-09T12:53:37.817 に答える