Partager via


Méthode ISyncMgrControl ::UpdateConflicts (syncmgr.h)

Informe le Centre de synchronisation que des conflits ont été ajoutés pour un gestionnaire ou un élément spécifique.

Syntaxe

HRESULT UpdateConflicts(
  [in] LPCWSTR               pszHandlerID,
  [in] LPCWSTR               pszItemID,
  [in] SYNCMGR_CONTROL_FLAGS nControlFlags
);

Paramètres

[in] pszHandlerID

Type : LPCWSTR

Pointeur vers une mémoire tampon contenant l’ID unique du gestionnaire qui gère l’élément. Cette chaîne est de longueur maximale MAX_SYNCMGR_ID y compris le caractère null de fin.

[in] pszItemID

Type : LPCWSTR

Pointeur vers une mémoire tampon contenant l’ID unique de l’élément. Cette chaîne est de longueur maximale MAX_SYNCMGR_ID y compris le caractère null de fin. Ce paramètre peut avoir la valeur NULL si l’événement s’est produit sur le gestionnaire plutôt que sur un élément spécifique.

[in] nControlFlags

Type : SYNCMGR_CONTROL_FLAGS

Valeur de l’énumération SYNCMGR_CONTROL_FLAGS spécifiant si la mise à jour doit être effectuée de manière synchrone ou asynchrone.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Si SYNCMGR_CF_WAIT est défini dans le paramètre nControlFlags , UpdateConflicts ne retourne pas tant que le Centre de synchronisation n’a pas chargé le gestionnaire spécifié, récupéré le magasin de conflits du gestionnaire et rechargé tous les conflits à partir de ce magasin. Si le gestionnaire est fourni par une collection de gestionnaires, la collection de gestionnaires est également chargée pour recharger le gestionnaire.

Exemples

L’exemple suivant montre l’utilisation d’ISyncMgrControl ::UpdateEvents par la procédure d’un gestionnaire.

void CMyDeviceHandler::Synchronize(...)
{
    ...
    // Add conflicts to the event store.

    // Get the Sync Center control object.
    ISyncMgrControl *pControl = NULL;
    
    hr = CoCreateInstance(CLSID_SyncMgrControl, 
                          CLSCTX_SERVER, 
                          IID_PPV_ARGS(&pControl));
    if (SUCCEEDED(hr))
    {
        // Tell Sync Center that we added events to our event store.
        // By passing NULL in pszItemID, we tell Sync Center that the conflict
        // occurred on the handler rather than a specific item.
        hr = pControl->UpdateConflicts(s_szMyDeviceSyncHandlerID, 
                                       NULL,
                                       SYNCMGR_CF_NOWAIT);
        pControl->Release();
    }

    ...

}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête syncmgr.h