3

含まれているファイルのリストを維持するためにParaffinを使用したい Wix プロジェクトがいくつかあるソリューションがあります。

私の理解では、通常、Paraffin をさまざまな bin フォルダーに向けて、すべてのファイルを収集します。

TFS がソリューションをビルドするとき、OutDir msbuild プロパティをオーバーライドします。これにより、すべてのビルド出力が、各プロジェクトの bin フォルダーではなく、共通の Binaries ディレクトリに送られます。

では、このシナリオで人々はどのようにパラフィンを使用するのでしょうか?

4

1 に答える 1

2

私は何年もパラフィンを使用していません。最新バージョンはあなたが必要とすることをするかもしれません、しかし私はあなたがパラフィンの有無にかかわらず使うことができるかもしれないいくつかの追加の考えをあなたに与えさせてください。

パラフィン獣脂の欠点の1つは、バイナリを収集することです。バイナリは、適切なフォルダなどに存在する必要があります。別の方法は、.slnファイル自体とそれが参照する.projファイルから収集することです。解決策は次のとおりです。おそらく、製品|パッケージに含まれるバイナリと含まれないバイナリの最も信頼のおけるリストです。ソース管理でフラグメントを維持したり、実際にバイナリをビルドしたりすることなく、ビルド時に各バイナリのフラグメントを自動的に生成できる場合があります。

WiX 3.6以降でのMSBuild統合、特に収穫ターゲットを調べてください。それでもうまくいかない場合は、次のことを試してください。

最近のプロジェクトで採用したアプローチは、熱を完全にバイパスしました。.slnとその.proj参照をスキャンし、各バイナリのWiXフラグメントを直接生成するワークフローアクティビティを作成しました。これらはすべて単なるXMLドキュメントです。バージョン3のUUIDは、バイナリ名、ターゲットフォルダー、ビルドバージョン(このアイデアではDerek Ciceroneのクレジット)に基づいて生成されたため、 ComponentIDはビルド間で一貫性がありましたが、新しいバージョンに分岐すると自動的にロールされました。

ソリューション内の一部のバイナリ(テストジグなど)は、インストーラーパッケージに入れたくなかったため、新しいMSBuildプロパティを.projファイルに挿入して、「インストール可能」(またはインストール不可)のフラグを付けました。プロパティを挿入してターゲットディレクトリを指定できます。この場合、すべてのバイナリが同じフォルダに入るはずだったので、それは必要ありませんでした。ファンシーになりたい場合は、このためのカスタムVisualStudioプロジェクトプロパティページを作成することもできます。

これの利点の1つは、チームのアプリ開発者がソリューションに新しいバイナリを追加するか、既存のバイナリを削除するだけで、インストーラーパッケージが次のビルドで.msiパッケージに含まれていたものを自動的に同期することです。インストーラーの人(本当にあなたのもの)をたくさんの手間を省きました!

これらのアプローチを組み合わせることができます。構築するバイナリのソリューションをスキャンし、その情報を使用して、パラフィンをターゲットにするか、適切なフォルダー|ファイルで加熱して収穫します。

于 2013-03-03T23:37:50.890 に答える