2 つのデータベースをマージする

VBScript ファイル WiMerge.vbs は、「Windows インストーラー開発者向けの Windows SDK コンポーネント」で提供されています。 このサンプル スクリプトは、1 つの Windows インストーラー データベースを別のデータベースにマージします。 詳しくは、「マージと変換」をご覧ください。

MsiDatabaseMerge 関数と Database オブジェクトの Merge メソッドは、インストール パッケージに含まれるモジュールのマージには使用できません。 これらは、Windows インストーラー パッケージに Merge モジュールをマージするために使わないでください。 インストール パッケージの作成者がインストール パッケージに Merge モジュールを含めるには、「マージ モジュールの適用」トピックで説明されているガイドラインに従ってください。

このサンプルでは、次のものの使い方が示されています。

このサンプルを使うには、Windows スクリプト ホストの CScript.exe または WScript.exe バージョンが必要です。 CScript.exe を使用してこのサンプルを実行するには、次の構文を使用してコマンド プロンプトでコマンド ラインを入力します。 最初の引数が /? の場合、または、指定された引数が少なすぎる場合は ヘルプが表示されます。 出力をファイルにリダイレクトするには、コマンド ラインを VBS > [<ファイルへのパス>] で終わらせます。 このサンプルでは、成功した場合は値 0、ヘルプが呼び出された場合は値 1、スクリプトが失敗した場合は値 2 が返されます。

cscript WiMerge.vbs [<データベースへのパス>][<インポートされたデータベースへのパス>][<テーブル名>]

マージを受け取る Windows インストーラー データベースへのパスを指定します。 最初にインポートされるデータベースへのパスを指定します。 マージ エラーを保持するテーブルのオプションの名前を指定できます。 テーブル名を指定しないと、インストーラーは _MergeErrors という名前を使い、内容を表示した後でテーブルを削除します。

その他のスクリプト作成の例については、「Windows インストーラーのスクリプト作成の例」を参照してください。 Windows スクリプト ホストを必要としないサンプル ユーティリティについては、「Windows インストーラーの開発ツール」を参照してください。