ModuleSignature テーブル

ModuleSignature テーブルは必須のテーブルです。 マージ モジュールを識別するために必要なすべての情報が含まれています。 このテーブルがまだ存在しない場合は、マージ ツールによって .msi ファイルに追加されます。 マージ モジュールの ModuleSignature テーブルには、ModuleID、Language、Version を含む行が 1 つだけ含まれています。 一方、.msi ファイルの ModuleSignature テーブルには、マージされた .msm ファイルごとにこの情報を含む行があります。

マージおよび検証ツールは、.msi ファイル内の ModuleSignature テーブルを調べて、現在のマージ モジュールで必要なすべての依存マージ モジュールがあるかどうか (「ModuleDependency テーブル」を参照)、およびインストール パッケージが以前に競合するマージ モジュールとマージされたかどうか (「ModuleExclusion テーブル」を参照) を確認します。

ModuleSignature テーブルには次の列があります。

Column 種類 キー Nullable
ModuleID Identifier Y N
Language 整数 Y N
Version Version N

 

[列]

ModuleID

マージ モジュールを一意に識別する識別子。 マージ モジュールと先行モジュールの間に完全な下位互換性がある場合を除き、2 つのマージ モジュールが同じ ModuleID を持つことはできません。 このフィールドの GUID は、GUIDGEN などのユーティリティを使って作成できます。 ModuleID 列はテーブルの主キーであるため、「マージ モジュール データベースでの主キーの名前付け」の名前付け規則に従う必要があります。 たとえば、マージ モジュールの判読可能名が MyLibrary であり、GUID が {880DE2F0-CDD8-11D1-A849-006097ABDE17} の場合、ModuleID 列のエントリは MyLibrary.880DE2F0_CDD8_11D1_A849_006097ABDE17 になります。

Language

Language 識別子は、マージ モジュールの既定の言語を指定します。 Language 識別子は 10 進数形式です。たとえば、米国英語は 1033 です。 マージ モジュールで使われる言語は、マージの前にマージ モジュールに変換を適用することで変更できます。

Version

Version フィールドには、マージ モジュールのメジャー バージョンとマイナー バージョンを示す文字列が含まれています。

検証

ICE03
ICE06
ICE25

多言語マージ モジュール