Compartilhar via


Implementando uma função de ponto de entrada do provedor de catálogo de endereços

Aplica-se a: Outlook 2013 | Outlook 2016

Quando um aplicativo cliente chama MAPILogonEx para iniciar uma sessão usando um perfil que contém seu provedor de catálogo de endereços, o MAPI carrega seu provedor e todas as outras que fazem parte do perfil. MAPI aprende sobre o nome da função de ponto de entrada do provedor olhando no perfil. Lembre-se de que essa função não é a mesma que uma função de ponto de entrada DLL; consulte a documentação de DllMain na documentação do Win32.

Há várias entradas, algumas das quais devem aparecer no arquivo de configuração mapisvc.inf, incluídas na seção de perfil de cada provedor de catálogo de endereços. A tabela a seguir lista essas entradas de seção de perfil e se o arquivo mapisvc.inf deve incluí-las ou não.

Entrada da seção Perfil requisito mapisvc.inf
PR_DISPLAY_NAME= cadeia de caracteres
Opcional
PR_PROVIDER_DISPLAY= cadeia de caracteres
Obrigatório
PR_PROVIDER_DLL_NAME= nome do arquivo DLL
Obrigatório
PR_RESOURCE_TYPE= longo
Obrigatório
PR_RESOURCE_FLAGS= bitmask
Opcional

Seu provedor de catálogo de endereços pode colocar essas informações em um perfil diretamente chamando o método IMAPIProp::SetProps da seção de perfil ou indiretamente modificando MAPISVC.INF. Os perfis são criados usando as informações relevantes no MAPISVC. INF para os provedores de serviços selecionados ou serviços de mensagem. Para obter mais informações sobre a organização e o conteúdo do MAPISVC. INF, consulte Formato de Arquivo de MapiSvc.inf.

O nome da função de ponto de entrada DLL do provedor de catálogo de endereços deve ser ABProviderInit e deve estar em conformidade com o protótipo ABProviderInit . Execute as seguintes tarefas na função de ponto de entrada DLL do provedor:

  • Verifique a versão da SPI (interface do provedor de serviços) para verificar se o MAPI está usando uma versão compatível com a versão que o provedor de catálogo de endereços está usando.

  • Instancie um objeto de provedor de catálogo de endereços.

Não chame MAPIInitialize ou MAPIUninitialize nesta função.

A função de ponto de entrada DLL instancia um objeto provedor e retorna ao MAPI um ponteiro para esse objeto.