ISimpleSyncEvents::OnConstraintConflict
在 Sync Framework 偵測到正在處理的項目涉及條件約束衝突時呼叫。
HRESULT OnConstraintConflict(
const CONFLICT_INFORMATION *pAdditionalConflictInfo,
const ITEM_FIELDS *pLocalConflictingItem,
const ITEM_FIELDS *pRemoteItem,
const CHANGE_UNIT_SET *pChangeUnitsToApply,
IUnknown *pRemoteConflictingItemData,
SYNC_CONSTRAINT_RESOLVE_ACTION *pRequestedResolution,
BOOL *pfForwardToApplication);
參數
- pAdditionalConflictInfo
[in] CONFLICT_INFORMATION 物件,這個物件包含發生衝突之項目的遠端提供者已知任何項目版本的相關資訊。
- pLocalConflictingItem
[in] 本機項目的索引鍵和版本屬性。
- pRemoteItem
[in, unique] 由於傳入變更而修改之項目的索引鍵和版本屬性 (如果該變更是更新的話)。如果傳入變更是插入,則為 Null。
- pChangeUnitsToApply
[in, unique] 應該在衝突解決期間套用的變更單位集合。
- pRemoteConflictingItemData
[in] 與遠端衝突項目相關聯的資料。如果傳入變更為刪除,則為 Null。
- pRequestedResolution
[out] SYNC_CONSTRAINT_RESOLVE_ACTION 列舉值,這個值代表解決條件約束衝突的選項。
- pfForwardToApplication
[out] 設定為 TRUE 以忽略 pRequestedResolution 並將通知轉送至應用程式。
傳回值
- S_OK
備註
這個事件是用於條件約束衝突,而這些衝突是因為某個項目與目的地存放區中的其他項目發生衝突而無法儲存該項目時發生,例如當來源提供者所傳送的檔案與已經存在目的地複寫中的檔案具有相同名稱和位置時。如需詳細資訊,請參閱處理簡單提供者的衝突。