Поделиться через


IAsynchronousNotifyingChangeApplier::ApplyFullEnumerationChanges

Выполняет обнаружение и обработку конфликтов, а также применение изменений для пакета изменений в ходе полного перечисления.

HRESULT ApplyFullEnumerationChanges( 
  CONFLICT_RESOLUTION_POLICY resolutionPolicy,
  ISyncFullEnumerationChangeBatch *pSourceChanges,
  IUnknown * pUnkDataRetriever,
  IEnumSyncChanges *pDestinationVersions,
  ISyncKnowledge *pDestinationKnowledge,
  IForgottenKnowledge *pDestinationForgottenKnowledge,
  IAsynchronousNotifyingChangeApplierTarget * pChangeApplierTarget,
  ISyncSessionState * pSessionState,
  ISyncCallback *pCallback);

Параметры

  • resolutionPolicy
    [in] Политика, применяемая для разрешения конфликтов.
  • pSourceChanges
    [in] Пакет изменений от поставщика источника.
  • pUnkDataRetriever
    [in] Объект, который можно использовать для получения данных элемента из реплики источника.
  • pDestinationVersions
    [in] Пакет изменений, содержащий версии элементов, которые сохраняются в реплике назначения. Эти элементы соответствуют элементам в списке pSourceChanges.
  • pDestinationKnowledge
    [in] Набор знаний реплики назначения.
  • pDestinationForgottenKnowledge
    [in] Утраченный набор знаний реплики назначения.
  • pChangeApplierTarget
    [in] Объект, который будет вызываться для сохранения изменений и конфликтов.
  • pSessionState
    [in] Сведения о состоянии для текущего сеанса.
  • pCallback
    [in] Ответные вызовы, которые будут получать уведомления о событиях применения изменений.

Возвращаемое значение

  • S_OK

  • E_OUTOFMEMORY

  • E_POINTER

  • SYNC_E_OBJECT_NEEDS_STATE

  • SYNC_E_INTERNAL_ERROR

  • SYNC_E_CHANGE_COUNT_MISMATCH

  • SYNC_E_CHANGE_NEEDS_KNOWLEDGE

  • SYNC_E_ITEM_HAS_NO_CHANGE_UNITS

  • SYNC_E_CHANGE_NOT_IN_KNOWLEDGE

  • SYNC_E_CHANGE_UNIT_COUNT_MISMATCH

  • SYNC_E_NOT_EXPECTED_CHANGE

  • SYNC_E_ITEM_MUST_EXIST

  • SYNC_E_ID_FORMAT_MISMATCH

  • SYNC_E_BATCH_NEEDS_KNOWLEDGE

  • SYNC_E_KNOWLEDGE_DECREASED

Замечания

Этот метод обнаруживает конфликты, возникающие между изменениями, отправленными в списке pSourceChanges, и соответствующими элементами реплики назначения. Он разрешает все конфликты в соответствии с политикой, определяемой параметром resolutionPolicy. Если необходимо, этот метод затем вызывает методы объектов из списка pChangeApplierTarget для сохранения изменений в реплике назначения, а также неразрешенных конфликтов.

См. также

Справочник

Интерфейс IAsynchronousNotifyingChangeApplier
Перечисление CONFLICT_RESOLUTION_POLICY