共用方式為


IProviderSyncServices2::CreateLoggedConflict

建立表示已記錄之衝突的 ILoggedConflict 物件。

HRESULT CreateLoggedConflict(
  BOOL fConstraint,
  ISyncChange * pChange,
  BYTE * pConflictingItemId,
  CONSTRAINT_CONFLICT_REASON constraintConflictReason,
  IUnknown * pUnkData,
  ISyncKnowledge * pConflictKnowledge,
  ISyncKnowledge * pMadeWithKnowledge,
  BOOL fTemporary,
  ILoggedConflict ** ppLoggedConflict);

參數

  • fConstraint
    [in] 如果此衝突代表條件約束衝突,則為 TRUE,否則為 FALSE
  • pChange
    [in] 來源提供者中衝突變更的項目中繼資料。
  • pConflictingItemId
    [in] 目的地複寫中與 pChange 指定的項目發生衝突之項目的項目識別碼 (如果這個衝突是條件約束衝突)。當 fConstraint 為 FALSE 時,這個值必須是 NULL
  • constraintConflictReason
    [in] 發生衝突的原因 (如果這個衝突是條件約束衝突)。當 fConstraint 為 FALSE 時,會忽略這個值。
  • pUnkData
    [in] pChange 的項目資料 (如果項目資料存在)。
  • pConflictKnowledge
    [in] 套用這個變更時要學習的知識。
  • pMadeWithKnowledge
    [in] 這個變更的建立方式知識。變更的建立方式知識通常是在進行這項變更時複寫所擁有的知識。
  • fTemporary
    [in] 如果這是暫時的衝突,則為 TRUE,否則為 FALSE
  • ppLoggedConflict
    [out] 新建立的 ILoggedConflict 物件。

傳回值

  • S_OK。

  • 如果 fConstraint 指出這個衝突不是條件約束衝突,而且 pConflictingItemId 不是 NULL;或者 pConflictingItemId 不是有效的識別碼:或者 constraintConflictReason 不是有效的值,則為 E_INVALIDARG。

  • E_OUTOFMEMORY。

  • E_POINTER。

  • 如果此物件未經過初始化,則為 SYNC_E_INVALID_OPERATION。

備註

傳回的 ILoggedConflict 物件會加入衝突知識及傳入 pConflictKnowledge 和 pMadeWithKnowledge 之建立方式知識物件的參考,但是不會複製它們。

請參閱

參考

IProviderSyncServices2 介面