2011-11-10 23 views
0

msbuildはVDPROJファイルをサポートしていませんが、コマンドラインdevenvを使用して構築することができます。MSBuild create VDPROJ

msbuildタスクを使用してすべてのprjects(C#)をビルドしたい場合は、私の解決策から特定のセットアッププロジェクトを開始した後でなければなりません。もちろん、このプロジェクトは以前に作成されたC#プロジェクト(proj1、proj2、proj3からの出力)に依存しています。

どうすればいいですか?

答えて

1

AfterCompile(またはAfterBuild)タスクをオーバーライドし、devenv.exeのExecコマンドを追加してvdprojファイルをコンパイルします。 devenv.exe/build/projectを実行すると、指定されたソリューション内でのみ指定されたプロジェクトがビルドされます。最後のビルドから変更されたプロジェクトファイルのみビルドされます。したがって、変更されていない限り、従属プロジェクトはビルドされません。

+0

プロジェクトの出力が実際に変更された場合(コード署名など)はどうなりますか? devenv.exeを呼び出すと、署名されたコンポーネントの再構築がトリガーされ、ファイルを上書きしてコード署名を元に戻します。 devenv.exeに明示的にvdprojの依存関係を構築しないように指示する方法はありますか? – l33t

+1

プロジェクトの出力ファイルには触れないでください。コード署名の前に出力ファイルを別の場所にコピーします。 – Ludwo