29

heat.exe を使用して、多数のファイルを含むフォルダーを収集したいと考えています。しかし、すべてのファイルを収集する代わりに、「*.txt」などの特定のファイル拡張子を除外したいと考えています。これどうやってするの?

4

3 に答える 3

7

今のところ唯一のオプションは、フォルダー全体を収集し、結果の .wxs ファイルに変換を適用して (-t:<xsl>スイッチを参照)、不要なもの (あなたの場合は txt ファイル) を除外することだと思います。ただし、3.5バージョンのheatは試していませんが(3.0で判断)、このあたりの変更はないと思います。

于 2010-09-17T14:30:27.437 に答える
3
于 2010-09-18T19:33:17.920 に答える
2

フォルダーから選択したファイルを収集する方法を見つけようとする代わりに、ビルド前アクションを使用して、収集したいファイルだけをフォルダーに取り込みます。次のワークフローが機能しています。

  1. 「ファイル」が存在する場合は削除します
  2. 「ファイル」フォルダを作成する
  3. ファイルを「files」フォルダにコピーします。robocopy ビルド アクションを使用すると、含めるファイルまたは除外するファイルを指定するのに十分な制御が可能になります。
  4. フォルダー全体を収穫します。

デバッグビルドのためだけに、条件付きで収穫アクションを実行するように設定しました。リリース ビルドは TFS サーバーから生成され、ソース管理から生成された .wxs を使用します。ビルド サーバーでハーベストを実行しても問題ないはずですが、これは余分な手順であり、実行しないことでChristopher Painterが説明した「非決定論的プロセス」の問題が解消されます。その 1 つのステップを除いて、開発マシンで実行するのと同じステップがビルド サーバーで実行されます。

于 2014-06-17T13:30:15.767 に答える