Merge.Merge メソッド

Merge オブジェクトの Merge メソッドは、現在のデータベースと現在のモジュールのマージを実行します。 このマージによって、モジュール内のコンポーネントが Feature によって識別される機能にアタッチされます。 モジュールのディレクトリ ツリーのルートは、RedirectDir によって指定されている場所にリダイレクトされます。

Merge メソッドは、.msi と .msm ファイルの特定の組み合わせをマージするために、1 回だけ呼び出すことができます。

構文

Merge.Merge(
  Feature,
  RedirectDir
)

パラメーター

機能

データベース内の機能の名前。

RedirectDir

データベースの Directory テーブル内のエントリのキー。 このパラメーターは null または空の文字列にできます。

戻り値

このメソッドは値を返しません。

解説

マージが完了すると、モジュール内のコンポーネントは Feature によって識別される機能にアタッチされます。 この機能は、作成されるのではなく、既存の機能である必要があります。 Merge メソッドは、モジュール内のすべての機能参照を取得し、モジュール データベース内の null GUID のすべての出現箇所で機能参照を置き換えることに注意してください。 詳しくは、「マージ モジュールの機能を参照する」をご覧ください。

このモジュールは、Connect メソッドを使用して、追加機能にアタッチできます。 Connect メソッドを呼び出すと、機能とコンポーネントの関連付けのみが作成されることに注意してください。 データベースに既にマージされている行は変更されません。

データベースに加えられた変更は、CloseDatabase メソッドが、bCommitTRUE に設定した状態で呼び出された場合にのみ保存されます。

何らかのマージの競合 (除外を含む) が発生した場合、それらは後で取得するためにエラー列挙子に配置されますが、それによりマージが失敗するわけではありません。 エラーは、Errors プロパティを使用して取得できます。 エラーと情報メッセージは、現在のログ ファイルに送信されます。

C++

Merge 関数に関する記事をご覧ください。

必要条件

要件
バージョン
Mergemod.dll 1.0 以降
ヘッダー
Mergemod.h
[DLL]
Mergemod.dll