ISimpleSyncEvents::OnConcurrencyConflict
Вызывается, когда Sync Framework обнаруживает, что обрабатываемый элемент участвует в конфликте параллелизма.
HRESULT OnConcurrencyConflict(
CONCURRENCY_CONFLICT_TYPE cctConflictType,
const ITEM_FIELDS *pLocalConflictingItem,
const CHANGE_UNIT_SET *pChangeUnitsInConflict,
IUnknown *pRemoteConflictingItemData,
SYNC_RESOLVE_ACTION *pSyncResolveAction,
BOOL *pfForwardToApplication);
Параметры
- cctConflictType
[in] Значение перечисления CONCURRENCY_CONFLICT_TYPE, представляющее тип конфликта, например конфликт операций обновления.
- pLocalConflictingItem
[in, unique] Свойства ключа и версии для локального элемента.
- pChangeUnitsInConflict
[in, unique] Набор базовых единиц, участвующих в конфликте между локальной и удаленной репликами.
- pRemoteConflictingItemData
[in] Данные, сопоставленные с удаленным конфликтующим элементом. Значение NULL, если входящее изменение является удалением.
- pSyncResolveAction
[out] Значение перечисления SYNC_RESOLVE_ACTION, представляющее параметры разрешения конфликтов параллелизма.
- pfForwardToApplication
[out] Установите значение TRUE, чтобы не учитывать параметр pSyncResolveAction и направлять уведомление в приложение.
Возвращаемое значение
- S_OK
Замечания
Это событие используется для разрешения конфликтов параллелизма, которые возникают при изменении одного и того же элемента или базовой единицы в двух различных репликах, которые позже синхронизируются. Дополнительные сведения см. в разделе Обработка конфликтов для простых поставщиков.