マージ モジュールの作成
次の手順では、マージ モジュールを作成するための一般的な手順について説明します。
新しいマージ モジュールを作成するには
- マージ モジュール データベースの編集に使用できるソフトウェア ツールを取得します。
- 空のマージ モジュール データベースを取得します。
- マージ モジュールの GUID を生成します。 マージ モジュールのデータベース テーブルの主キーを作成するときは、この GUID を使用する必要があります。
- マージによって提供される各コンポーネントの Component テーブルにレコードを追加します。 Component テーブルはあらゆるマージ モジュールで必須です。 マージ モジュールは、機能ではなくコンポーネントで動作することに注意してください。 ただし、場合によってはデータベース テーブル エントリで機能を参照することが必要な場合もあります。 詳細については、「マージ モジュールの機能の参照」を参照してください。
- マージ モジュールでターゲット データベースに追加するディレクトリのレイアウトを指定する Directory テーブルをマージ モジュールに追加します。 Directory テーブルはあらゆるマージ モジュールで必須です。
- 空白の FeatureComponents テーブルを マージ モジュール データベースにインポートします。 この空のテーブルは、.msi ファイルに独自の FeatureComponents テーブルが含まれていない場合のマージ ツールのガイドラインを提供します。
- このマージ モジュールによって提供されたすべてのファイルを収集し、 MergeModule.CABinet キャビネット ファイルを作成します。 .msm ファイル内のストリームとしてキャビネットをマージ モジュールに追加します。
- MergeModule.CABinet に格納されているすべてのファイルについて、レコードを File テーブルに追加します。
- マージ モジュールを識別するために必要な情報を ModuleSignature テーブルに追加します。 すべてのマージ モジュールには ModuleSignature テーブルが必要です。
- マージ モジュール内のコンポーネントを ModuleComponents テーブルに記載します。 すべてのマージ モジュールには ModuleComponents テーブルが必要です。
- マージ モジュールによってターゲット インストール データベースの "シーケンス テーブル" を変更する必要がある場合にのみ、マージ モジュールのシーケンス テーブルを .msm ファイルに追加します。
- _Validation テーブルをマージ モジュールに追加します。 マージ モジュールでは、検証に合格するために _Validation テーブルが必要です。
- マージ モジュールでは、まれにユーザー インターフェイスが必要です。 マージ モジュールに UI を含めることはお勧めしません。 ユーザー インターフェイスが必要な場合は、UI テーブルを他のテーブルと同じように .msi ファイルにマージできます。
- マージ モジュール データベース内の適切なレジストリ テーブルにレジストリ情報を追加します。 タイプ ライブラリ、クラス、拡張機能、動詞のレジストリ情報を、TypeLib、Class、AppId、ProgId、Extension、Verb、または MIME テーブルに追加します。 その他のすべてのレジストリ情報は、Registry テーブルに入力できます。 SelfReg テーブルの使用はお勧めしません。
- 概要情報をマージ モジュールの概要情報ストリームに追加します。
- インストールを試みる前に、すべてのマージ モジュールで検証を実行します。
関連トピック
-
マージ モジュールの検証