Compartir a través de


ISaveChangeContext2::SetConstraintConflictOnChange

Notifica que se produjo un conflicto de restricción cuando el proveedor de destino intentó aplicar el cambio a la réplica de destino.

HRESULT SetConstraintConflictOnChange(
  const BYTE * pbConflictingItemId,
  CONSTRAINT_CONFLICT_REASON constraintConflictReason);

Parámetros

  • pbConflictingItemId
    [in, unique] Identificador de elemento del elemento de destino que está en conflicto con el cambio que se va a aplicar.
  • constraintConflictReason
    [in] Motivo por el que se produjo el conflicto.

Valor devuelto

  • S_OK.

  • E_INVALIDARG si constraintConflictReason no es un valor válido o si constraintConflictReason es CCR_COLLISION y pbConflictingItemId es NULL.

  • SYNC_E_INVALID_OPERATION si ya se ha establecido un conflicto de restricción o un error recuperable en este objeto.

Notas

Se produce un conflicto de restricción cuando un proveedor de destino intenta aplicar un cambio a la réplica de destino y el cambio infringe una restricción de la réplica de destino, por ejemplo la relación de carpetas o la ubicación de datos con el mismo nombre dentro de un sistema de archivos.

Cuando el proveedor de destino utiliza este método para notificar un conflicto de restricción, el aplicador de cambios resuelve el conflicto según la directiva de resolución de conflictos establecida para la sesión o según la acción de resolución de conflictos establecida por la aplicación para el conflicto especificado. A continuación, el aplicador de cambios envía todas las llamadas necesarias al proveedor de destino para que este pueda aplicar el conflicto resuelto a la réplica de destino. Para obtener más información, vea Detectar y resolver conflictos de restricción.

Vea también

Referencia

Interfaz ISaveChangeContext2