다음을 통해 공유


ISyncMgrControl::ActivateHandler 메서드(syncmgr.h)

처리기를 활성화하거나 비활성화합니다.

구문

HRESULT ActivateHandler(
  [in] BOOL                  fActivate,
  [in] LPCWSTR               pszHandlerID,
  [in] HWND                  hwndOwner,
  [in] SYNCMGR_CONTROL_FLAGS nControlFlags
);

매개 변수

[in] fActivate

형식: BOOL

TRUE 이면 활성화됩니다. 비활성화할 FALSE 입니다.

[in] pszHandlerID

형식: LPCWSTR

처리기의 고유 ID를 포함하는 버퍼에 대한 포인터입니다. 이 문자열은 종료 null 문자를 포함하여 MAX_SYNCMGR_ID 최대 길이입니다.

[in] hwndOwner

형식: HWND

처리기에서 필요한 UI를 표시하는 데 사용할 수 있는 창에 대한 핸들입니다. 이 값은 NULL일 수 있습니다.

[in] nControlFlags

형식: SYNCMGR_CONTROL_FLAGS

처리기의 활성화 또는 비활성화를 동기적으로 또는 비동기적으로 수행할지 여부를 지정하는 SYNCMGR_CONTROL_FLAGS 열거형의 값입니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

동기화 센터 폴더에 활성 처리기가 나타납니다. 동기화 설정 폴더에 비활성 처리기가 나타납니다.

지정한 처리기가 GetCapabilities 메서드에서 반환된 마스크의 SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE 또는 SYNCMGR_HCM_QUERY_BEFORE_DEACTIVATE 반환하는 경우 처리기가 활성화되거나 비활성화되기 전에 쿼리 작업이 요청됩니다. 쿼리 UI가 요청되지 않거나 사용자가 작업을 확인한 후 처리기의 Activate 메서드가 호출됩니다.

nControlFlags 매개 변수에 SYNCMGR_CF_WAIT 설정된 경우 Sync Center가 이 알림을 처리할 때까지 ActivateHandler가 반환되지 않습니다.

예제

다음 예제에서는 처리기의 프로시저에서 ISyncMgrControl::ActivateHandler 를 사용하는 방법을 보여 줍니다.

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 activate our handler.
        hr = pControl->ActivateHandler(TRUE, 
                                       s_szMySyncHandlerID, 
                                       hwndOwner,
                                       SYNCMGR_CF_NOWAIT);
        pControl->Release();
    }

    ...

}

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 syncmgr.h