Compartilhar via


Iniciar um provedor de serviços

Aplica-se a: Outlook 2013 | Outlook 2016

Em algum momento após um cliente iniciar uma sessão com MAPI, seu provedor de serviços será iniciado. Os provedores de transporte são iniciados quando um cliente faz uma solicitação para seus serviços. Os provedores do catálogo de endereços e do repositório de mensagens são iniciados durante o processo de logon do cliente.

Um cliente chama IMAPISession::OpenAddressBook para carregar cada um dos provedores de catálogo de endereços incluídos no perfil e IMAPISession::OpenMsgStore para carregar um provedor específico do repositório de mensagens. Os provedores de catálogo de endereços que fazem parte de um serviço de mensagem são iniciados antes de qualquer um dos outros provedores do serviço.

O MAPI inicia cada provedor de serviços no perfil ativo fazendo o seguinte:

  • Localizando o nome de sua DLL no perfil. Você deve registrar o nome da DLL do provedor no arquivo de configuração Mapisvc.inf para garantir que ele seja exibido no perfil. Quando seu provedor de serviços é adicionado a um perfil, individualmente ou como parte de um serviço de mensagem, todas as seções [Provedor de Serviços] de Mapisvc.inf que se aplicam ao seu provedor são copiadas para o perfil. Para obter mais informações sobre a estrutura de Mapisvc.inf, consulte Formato de arquivo de MapiSvc.inf.

  • Chamando a função de API do Windows LoadLibrary para carregar a DLL. Como o MAPI chama LoadLibrary sempre que usa uma DLL do provedor de serviços (independentemente de já ter sido carregada) ou apenas na primeira vez, seu provedor de serviços não deve fazer suposições sobre o número de vezes que ele será carregado. Para cada chamada para LoadLibrary, a MAPI faz uma chamada para a função de API do Windows FreeLibrary quando uma DLL do provedor de serviços não é mais necessária.

  • Chamando a função de ponto de entrada para o provedor. O MAPI chama a função de ponto de entrada do provedor para iniciar o processo de logon. As funções de ponto de entrada garantem que você esteja usando uma versão da SPI (interface do provedor de serviço) compatível com a versão que está sendo usada pelo MAPI. Essas funções também retornam ponteiros para objetos de provedor recém-criados. Para obter mais informações sobre como criar uma função de ponto de entrada para seu provedor, consulte Implementando uma Função de Ponto de Entrada do Provedor de Serviços.

Confira também

Provedores de Serviços MAPI