Compartilhar via


Método ISyncMgrHandler::Activate (syncmgr.h)

Solicita que o manipulador seja ativado ou desativado. Um manipulador ativo pode ser sincronizado; um manipulador inativo não pode.

Sintaxe

HRESULT Activate(
  [in] BOOL fActivate
);

Parâmetros

[in] fActivate

Tipo: BOOL

TRUE para ativar; FALSE para desativar.

Valor retornado

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 do Centro de Sincronização e pode ser sincronizado. Um manipulador inativo aparece na pasta Configuração de Sincronização e deve ser ativado (o que o move para a pasta do Centro de Sincronização) antes que ele possa ser sincronizado.

O estado de ativação não deve ser confundido com o estado habilitado. Um manipulador ativo pode ser desabilitado. Isso significa que ele ainda é mostrado na pasta Central de Sincronização, mas que não pode ser sincronizado.

O Sync Center chama esse método nas duas instâncias a seguir.

  • Quando o usuário seleciona o manipulador na pasta Instalação de Sincronização e inicia sua tarefa de Instalação . Se o manipulador der suporte ao objeto SYNCMGR_OBJECTID_QueryBeforeActivate , esse método só será chamado se a operação da interface do usuário, que consiste em uma caixa de diálogo solicitando que o usuário confirme se deseja ativar o manipulador, foi bem-sucedida.
  • Quando o usuário seleciona o manipulador na pasta Central de Sincronização e inicia sua tarefa Excluir , mas somente se o manipulador não tiver definido o sinalizador SYNCMGR_HPM_PREVENT_DEACTIVATE . Se o manipulador der suporte ao objeto SYNCMGR_OBJECTID_QueryBeforeDeactivate , esse método só será chamado se a operação da interface do usuário tiver sido bem-sucedida.
Se o sinalizador SYNCMGR_HPM_PREVENT_ACTIVATE for definido no valor recuperado por ISyncMgrHandler::GetCapabilities, uma chamada para esse método solicitando a ativação do manipulador falhará.

O estado de ativação de um manipulador individual pode ser encontrado chamando IsActive.

Se o manipulador não precisar executar nenhuma ação quando estiver ativado, ele poderá retornar S_OK ou E_NOTIMPL conforme mostrado no exemplo abaixo.

Exemplos

O exemplo a seguir mostra uma implementação simples desse método.

STDMETHODIMP CMyDeviceHandler::Activate(__in BOOL fActivate)
{
    return E_NOTIMPL;
}

Requisitos

   
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

Confira também

ISyncMgrHandler

ISyncMgrHandler::GetObject

ISyncMgrUIOperation::Run