WiX は、キャビネットファイルの作成を ファイルの圧縮に関してスピードアップする 二通りの方式を 提供しています:
Light.exe は、単一パッケージ中の複数キャビネットファイルをビルドするのに 複数のスレッドを 使用します。残念ながら、CAB API 自体はマルチスレッド化されていないので、単一のキャビネット ファイルは 1スレッドでビルドされます。Light.exe は 複数のキャビネットファイルがある時に 複数のスレッドを使うので、それぞれのキャビネットファイルは 1スレッドでビルドされます。
デフォルトでは Light.exe は、キャビネットファイルを作っている時 使用するスレッドの数として システムのプロセッサ/コアの数を使用します。Light.exe の -ct スイッチか .wixproj プロジェクト 中の CabinetCreationThreadCount プロパティを使って デフォルトをオーバーライドできます。
外部からと ( Media/@EmbedCab アトリビュートを使って) .msi パッケージに埋め込んでとの両方で 複数の キャビネットファイルを使う事ができます。
もし あまり変更されないファイルでセットアップをビルドするなら、それらのファイルの為の キャビネットファイルを一度生成して、そのあとで、リビルドとそれらを再圧縮するのに CPU 時間を 費やす事無く それらを再利用できます。
キャビネットファイル再利用に関わる Light.exe スイッチが2つあります:
WiX は、以下を確保する事によってキャッシュされたキャビネットファイルはまだ有効で あると 自動的に実証します: