Compartilhar via


Provedores de Serviços MAPI

Aplica-se a: Outlook 2013 | Outlook 2016

Há três tipos comuns de provedores de serviços:

  • Provedores de catálogo de endereços.

  • Provedores do repositório de mensagens.

  • Provedores de transporte.

Os provedores do catálogo de endereços e do repositório de mensagens têm muitas semelhanças. Eles registram um identificador exclusivo com MAPI que eles usam para construir identificadores de entrada para seus objetos. Eles fornecem uma hierarquia de objetos e propriedades que os clientes podem acessar e manipular. Para seus objetos de contêiner, eles dão suporte a uma tabela de hierarquia e uma tabela de conteúdo. Eles dão suporte à notificação de eventos nessas tabelas e, opcionalmente, em objetos individuais para que os clientes possam ser informados das alterações que ocorrem durante a sessão. Quando as operações se tornam longas, elas podem exibir um indicador de progresso para informar o usuário sobre o status da operação. Os clientes podem se comunicar com provedores de catálogo de endereços e repositório de mensagens indiretamente por meio do MAPI usando as interfaces IAddrBook : IMAPIProp e IMAPISession : IUnknown ou diretamente usando uma das interfaces do provedor de serviços na tabela a seguir.

Interfaces do provedor de catálogo de endereços Interfaces do provedor do repositório de mensagens
IABContainer : IMAPIContainer
IMsgStore : IMAPIProp
IDistList : IMAPIContainer
IMAPIFolder : IMAPIContainer
IMailUser : IMAPIProp
IMessage : IMAPIProp

IAttach : IMAPIProp

Os provedores de transporte diferem do catálogo de endereços e dos provedores do repositório de mensagens na forma como se comunicam com o MAPI e com os clientes. Os provedores de transporte normalmente esperam que o MAPI os solicite informações em vez de iniciar a comunicação. Ao contrário dos outros provedores, os provedores de transporte não dão suporte a uma variedade de objetos e tabelas que são comumente acessados por clientes. No entanto, eles dão suporte a um objeto status, assim como todos os provedores de serviços e publicam suas propriedades na tabela status. Enquanto provedores de catálogo de endereços e repositório de mensagens chamam o método IMAPISupport::SetProviderUID para registrar identificadores exclusivos para construir seus identificadores de entrada, os provedores de transporte chamam o método IXPLogon::AddressTypes para registrar identificadores exclusivos, bem como tipos de endereço para assumir a responsabilidade pela entrega de mensagens específicas.

Seu provedor de serviços deve ter três arquivos de cabeçalho: um arquivo de cabeçalho público e dois arquivos internos. Use o arquivo de cabeçalho público para configuração e para documentar propriedades e seus valores. Incluir em um dos arquivos de cabeçalho interno todos os cabeçalhos MAPI públicos necessários; esse arquivo de cabeçalho deve ser incluído em todos os arquivos de origem do provedor de serviços. Use o outro arquivo interno para definir identificadores de recursos.

O catálogo de endereços, o repositório de mensagens e os provedores de transporte executam as seguintes tarefas:

  • Forneça uma função de ponto de entrada.

  • Forneça um objeto de provedor e logon para lidar com logon e inicialização.

  • Se o provedor pertencer a um serviço de mensagem, forneça uma função de ponto de entrada do serviço de mensagem.

  • Suporte à configuração implementando uma folha de propriedades.

  • Implemente um objeto status e dê suporte à tabela status.

  • Manipular desligado.

Confira também

Conceitos de MAPI