Compartilhar via


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

Ativa ou desativa um manipulador.

Sintaxe

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

Parâmetros

[in] fActivate

Tipo: BOOL

TRUE para ativar; FALSE para desativar.

[in] pszHandlerID

Tipo: LPCWSTR

Um ponteiro para um buffer que contém a ID exclusiva do manipulador. Essa cadeia de caracteres tem comprimento máximo MAX_SYNCMGR_ID incluindo o caractere nulo de terminação.

[in] hwndOwner

Digite: HWND

Um identificador para uma janela que pode ser usada pelo manipulador para exibir qualquer interface do usuário necessária. Esse valor pode ser NULL.

[in] nControlFlags

Tipo: SYNCMGR_CONTROL_FLAGS

Um valor da enumeração SYNCMGR_CONTROL_FLAGS especificando se a ativação ou desativação do manipulador deve ser executada de forma síncrona ou assíncrona.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Um manipulador ativo aparece na pasta Central de Sincronização; um manipulador inativo aparece na pasta Configuração de Sincronização.

Se o manipulador especificado retornar SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE ou SYNCMGR_HCM_QUERY_BEFORE_DEACTIVATE na máscara retornada do método GetCapabilities , a operação de consulta será solicitada antes que o manipulador seja ativado ou desativado. Se nenhuma interface do usuário de consulta for solicitada ou depois que o usuário confirmar a operação, o método Activate do manipulador será chamado.

Se SYNCMGR_CF_WAIT estiver definido no parâmetro nControlFlags , ActivateHandler não retornará até que o Sync Center tenha processado essa notificação.

Exemplos

O exemplo a seguir mostra o uso de ISyncMgrControl::ActivateHandler pelo procedimento de um manipulador.

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

    ...

}

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho syncmgr.h