Partager via


ISaveChangeContext2::SetConstraintConflictOnChange

Signale qu'un conflit de contraintes s'est produit lorsque le fournisseur de destination a essayé d'appliquer la modification au réplica de destination.

Syntaxe

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

Paramètres

  • pbConflictingItemId
    [in, unique] ID de l'élément de destination qui est en conflit avec la modification à appliquer.

  • constraintConflictReason
    [in] Raison pour laquelle le conflit s'est produit.

Valeur de retour

  • S_OK.

  • E_INVALIDARG lorsque constraintConflictReason n'est pas une valeur valide, ou lorsque constraintConflictReason est CCR_COLLISION et pbConflictingItemId est NULL.

  • SYNC_E_INVALID_OPERATION si un conflit de contraintes ou une erreur récupérable a déjà été définie sur cet objet.

Notes

Un conflit de contraintes se produit lorsqu'un fournisseur de destination essaie d'appliquer une modification au réplica de destination, et que cette modification ne respecte pas une contrainte de ce dernier, par exemple la relation de dossiers ou l'emplacement de données portant le même nom dans un système de fichiers.

Lorsque le fournisseur de destination utilise cette méthode pour signaler un conflit de contraintes, l'applicateur de modifications résout le conflit conformément à la stratégie de résolution de conflit définie pour la session ou de l'action de résolution de conflit définie par l'application pour le conflit spécifié. L'applicateur de modifications distribue ensuite tous les appels nécessaires au fournisseur de destination afin que celui-ci puisse appliquer le conflit résolu au réplica de destination. Pour plus d'informations, consultez Détection et résolution des conflits de contraintes.

Voir aussi

Autres ressources

Interface ISaveChangeContext2