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


Метод ISyncMgrControl::UpdateEvents (syncmgr.h)

Сообщает центру синхронизации о добавлении событий для определенного обработчика или элемента.

Синтаксис

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

Параметры

[in] pszHandlerID

Тип: LPCWSTR

Указатель на буфер, содержащий уникальный идентификатор обработчика, управляющий элементом. Эта строка имеет максимальную длину MAX_SYNCMGR_ID включая завершающий символ NULL .

[in] pszItemID

Тип: LPCWSTR

Указатель на буфер, содержащий уникальный идентификатор элемента. Эта строка имеет максимальную длину MAX_SYNCMGR_ID включая завершающий символ NULL . Этот параметр может иметь значение NULL , если событие произошло в обработчике, а не в определенном элементе.

[in] nControlFlags

Тип: SYNCMGR_CONTROL_FLAGS

Значение из перечисления SYNCMGR_CONTROL_FLAGS , указывающее, следует ли выполнять обновление синхронно или асинхронно.

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

Тип: HRESULT

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Если SYNCMGR_CF_WAIT задано в параметре nControlFlags , UpdateEvents не возвращается, пока центр синхронизации не загрузит указанный обработчик, не извлекнет хранилище событий обработчика и не перезагрузит все события из этого хранилища. Если обработчик предоставляется коллекцией обработчиков, коллекция обработчиков также загружается для перезагрузки обработчика.

Примеры

В следующем примере показано использование ISyncMgrControl::UpdateEvents процедурой обработчика.

void CMyDeviceHandler::Synchronize(...)
{
    ...
    // Add events 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 event
        // occurred on the handler rather than a specific item.
        hr = pControl->UpdateEvents(s_szMyDeviceSyncHandlerID, 
                                    NULL,
                                    SYNCMGR_CF_NOWAIT);
        pControl->Release();
    }

    ...

}

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header syncmgr.h