マージ モジュールの File テーブルの作成
File テーブルは、すべてのマージ モジュールで必要であり、マージ モジュールによってターゲット インストール パッケージに提供される各ファイルのレコードを含む必要があります。 マージ モジュールが .msi ファイルにマージされると、マージ モジュールの File テーブル内のすべてのファイルが、.msm ファイルのキャビネット ファイル内に格納されます。 マージ モジュールでのキャビネットの名前は、常に MergeModule.CABinet です。
詳しくは、「MergeModule.CABinet キャビネット ファイルの生成」をご覧ください。
マージ モジュールのファイルは常にキャビネット ファイル内に格納されるため、File テーブルの Attributes 列で msidbFileAttributesNoncompressed または msidbFileAttributesCompressed ビット フラグを設定する必要はありません。
MergeModule.CABinet 内のファイルの名前は、マージ モジュールの File テーブルの主キーと一致している必要があります。
File 列は File テーブルの主キーであり、このフィールドのエントリは、「マージ モジュール データベースでの主キーの名前付け」で説明されている規則に従う必要があります。
ファイルのシーケンス番号は、File テーブルの Sequence 列で指定されています。
ファイルは、MergeModule.CABinet に格納されるのと同じ順序で、マージ モジュールの File テーブルに列記されている必要があります。 ファイルのシーケンス番号は連続している必要はありませんが、キャビネット内に格納されているファイルと同じ順序になっている必要があります。 たとえば、キャビネットに格納されている 1 番目、2 番目、3 番目のファイルには、シーケンス番号 100、200、300 を指定できます。
インストーラーは、MergeModule.CABinet には含まれていても File テーブルでは指定されていない余分なファイルをスキップします。
変換を使って複数の言語をサポートするマージ モジュールに必要なすべてのファイルを、1 つのキャビネット ファイルに含めることができます。 すべての言語ファイルに、キャビネット内で一意のシーケンス番号を指定でき、そのようにすると、変換では、特定の言語で必要なときに、File テーブルのファイルを追加または削除できます。 詳しくは、「多言語マージ モジュールの作成」をご覧ください。
詳しくは、「File テーブル」をご覧ください。