この環境で各種実験、開発、テスト、配布用インストールパッケージの作成を行っています。 開発中は、ビルド後はすぐにGACにコピーしてテストしたいのですが、パッケージの作成時には Wppackager を起動したい。
今までは、その都度、いちいち設定を変えていましたが、ふと、デバッグとリリース構成をうまく切り替えられないかなと思っていろいろ試みました。
残念ながら、デバッグとリリース構成で、「ビルド後のイベント コマンドライン」に異なる設定を行うことが出来ません。 また、PostBuildEvent.bat の内容はビルドの度に作成し直されるようなので、予めカスタマイズしておくこと出来ません。 但し、出力パスは変えることが出来るので、置いてあるファイルの違いを見て、実行するコマンドを切り替える方法で対応出来ることが判りました。
プロジェクトのプロパティの中の「共通プロパティ」-「ビルドイベント」の「ビルド後のイベント コマンドライン」に、以下の行ブロックを設定します。
ビルド後のイベント コマンドライン:
if not exist wppackager.xml goto CopyGAC "C:\Program Files\WPPackager\wppackager" wppackager.xml goto EventEnd :CopyGAC C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\gacutil /i $(TargetPath) :EventEndこれで、構成を変えてビルドを行うだけで、開発環境での最新ビルドの反映とパッケージングが行えるようになります。
・Using Wppackager to Package and Deploy Web Parts for Microsoft SharePoint Products and Technologies
<http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_sp2003_ta/html/sharepoint_deployingwebparts_msi.asp>
tags: SharePoint