Compartir a través de


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

Informa al Centro de sincronización de que se han agregado conflictos para un controlador o elemento específico.

Sintaxis

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

Parámetros

[in] pszHandlerID

Tipo: LPCWSTR

Puntero a un búfer que contiene el identificador único del controlador que administra el elemento. Esta cadena tiene una longitud máxima MAX_SYNCMGR_ID incluido el carácter nulo de terminación.

[in] pszItemID

Tipo: LPCWSTR

Puntero a un búfer que contiene el identificador único del elemento. Esta cadena tiene una longitud máxima MAX_SYNCMGR_ID incluido el carácter nulo de terminación. Este parámetro puede ser NULL si el evento se produjo en el controlador en lugar de en un elemento específico.

[in] nControlFlags

Tipo: SYNCMGR_CONTROL_FLAGS

Valor de la enumeración SYNCMGR_CONTROL_FLAGS que especifica si la actualización se debe realizar de forma sincrónica o asincrónica.

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Si SYNCMGR_CF_WAIT se establece en el parámetro nControlFlags , UpdateConflicts no devuelve hasta que el Centro de sincronización haya cargado el controlador especificado, recuperó el almacén de conflictos del controlador y volvió a cargar todos los conflictos de ese almacén. Si un controlador lo proporciona una colección de controladores, la colección de controladores también se carga para volver a cargar el controlador.

Ejemplos

En el ejemplo siguiente se muestra el uso de ISyncMgrControl::UpdateEvents mediante el procedimiento de un controlador.

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();
    }

    ...

}

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado syncmgr.h