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


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

Включает или отключает обработчик.

Синтаксис

HRESULT EnableHandler(
  [in] BOOL                  fEnable,
  [in] LPCWSTR               pszHandlerID,
  [in] HWND                  hwndOwner,
  [in] SYNCMGR_CONTROL_FLAGS nControlFlags
);

Параметры

[in] fEnable

Тип: BOOL

Значение TRUE для включения; Значение FALSE для отключения.

[in] pszHandlerID

Тип: LPCWSTR

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

[in] hwndOwner

Тип: HWND

Дескриптор окна, который может использоваться обработчиком для отображения любого необходимого пользовательского интерфейса. Это значение может иметь значение NULL.

[in] nControlFlags

Тип: SYNCMGR_CONTROL_FLAGS

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

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

Тип: HRESULT

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

Комментарии

В папке Центра синхронизации появится активный обработчик; неактивный обработчик отображается в папке "Настройка синхронизации".

Если указанный обработчик возвращает SYNCMGR_HCM_QUERY_BEFORE_ENABLE или SYNCMGR_HCM_QUERY_BEFORE_DISABLE в маске, возвращенной методом GetCapabilities , пользователю будет предложено диалоговое окно подтверждения, запрошенное перед включением или отключением обработчика. Если пользовательский интерфейс запроса не запрашивается или пользователь подтверждает операцию, вызывается метод Enable обработчика.

Если SYNCMGR_CF_WAIT задано в параметре nControlFlags , EnableHandler не возвращается, пока Центр синхронизации не обработает это уведомление.

Примеры

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

void MiscProc(...)
{
    ...

    // 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 to enable our handler.
        hr = pControl->EnableHandler(TRUE, 
                                     s_szMySyncHandlerID, 
                                     hwnd,
                                     SYNCMGR_CF_NOWAIT);
        pControl->Release();
    }

    ...

}

Требования

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