共用方式為


IMsmMerge2::MergeEx 方法 (mergemod.h)

MergeEx方法會執行目前資料庫和目前模組的合併。 合併會將模組中的元件附加至 Feature所識別的功能。 模組目錄樹狀結構的根目錄會重新導向至 RedirectDir所指定的位置。 如需詳細資訊,請參閱 Merge 物件的MergeEx方法。

語法

HRESULT MergeEx(
  [in] const BSTR Feature,
  [in] const BSTR RedirectDir,
  [in] IUnknown   *pConfiguration
);

參數

[in] Feature

資料庫中的功能名稱。 LPCWSTR可用來取代BSTR

[in] RedirectDir

資料庫目錄資料表中專案的索引鍵。 LPCWSTR可用來取代BSTR。 此參數可以是 Null 或空字串。

[in] pConfiguration

pConfiguration引數是由用戶端實作的介面。 引數可以是 Null。 這個引數的存在表示用戶端工具能夠修改可設定的合併模組。 此引數的存在不需要用戶端提供任何特定可設定專案的組態資料。

傳回值

這個方法可以傳回其中一個值。

意義
E_OUTOFMEMORY
系統記憶體不足,無法完成作業。
E_INVALIDARG
其中一個引數無效。
E_FAIL
合併因為發生錯誤而停止。 某些資料表可能尚未合併。 如需詳細資訊,請參閱<備註>一節。
S_FALSE
函式成功,但發生錯誤,而且合併本身可能無效。
S_OK
此函數已成功。

備註

此函式會執行目前資料庫和目前模組的合併。 模組目錄樹狀結構的根目錄會重新導向至 RedirectDir所指定的位置。 如果發生任何合併衝突,包括排除專案,它們會放在錯誤列舉值中以供稍後擷取,但不會造成合併失敗。 您可以使用 get_Errors 函式來擷取錯誤。 錯誤和參考訊息將會張貼至目前的記錄檔。

合併完成後,模組中的元件會附加至 Feature所識別的功能。 此功能必須已經存在,而且尚未建立。 模組可以使用 Connect 函式附加至其他功能。

除非使用bCommit設為TRUE呼叫CloseDatabase函式,否則對資料庫的變更將不會儲存到磁片。

合併失敗時,因為模組設定不正確,函式會傳回E_FAIL。 這包括這些 msmErrorType 錯誤:msmErrorBadNullSubstitution、msmErrorBadSubstitutionType、msmErrorBadNullResponse、msmErrorMissingConfigItem 和 msmErrorDataRequestFailed。 這些錯誤會導致合併在發生錯誤時立即停止。 當 MergeEx 傳回E_FAIL時,錯誤物件仍會新增至列舉值。 如需 msmErrorType 錯誤的詳細資訊,請參閱 get_Type函式 (錯誤物件) 。 所有其他錯誤都會導致 MergeEx 傳回S_FALSE,並讓合併繼續。

需求

   
最低支援的用戶端 Mergemod.dll 2.0 或更新版本
目標平台 Windows
標頭 mergemod.h
Dll Mergemod.dll

另請參閱

合併模組自動化