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
解説
このイベントは、同時実行の競合に使用されます。同時実行の競合は、後で同期される異なる 2 つのレプリカで同じ項目または変更単位が変更された場合に発生します。詳細については、「簡易プロバイダーの競合処理」を参照してください。