Compartilhar via


IMAPISupport::OpenAddressBook

Aplica-se a: Outlook 2013 | Outlook 2016

Fornece acesso ao catálogo de endereços.

HRESULT OpenAddressBook(
LPCIID lpInterface,
ULONG ulFlags,
LPADRBOOK FAR * lppAdrBook
);

Parâmetros

lpInterface

[in] Um ponteiro para o IID (identificador de interface) que representa a interface a ser usada para acessar o catálogo de endereços. Os valores válidos são NULL, que indica a interface do catálogo de endereços padrão IAddrBook e IID_IAddrBook.

ulFlags

Reservados; deve ser zero.

lppAdrBook

[out] Um ponteiro para um ponteiro para o catálogo de endereços.

Valor de retorno

S_OK

O acesso ao catálogo de endereços foi fornecido.

MAPI_W_ERRORS_RETURNED

A chamada foi bem-sucedida, mas um ou mais provedores de catálogo de endereços não puderam ser carregados. Quando esse aviso é retornado, a chamada deve ser tratada como bem-sucedida. Para testar esse aviso, use a macro HR_FAILED . Para obter mais informações, confira Usando macros para tratamento de erros.

Comentários

O método IMAPISupport::OpenAddressBook é implementado para todos os objetos de suporte do provedor de serviços. Os provedores de serviços, normalmente provedores de transporte e armazenamento de mensagens fortemente acoplados, chamam OpenAddressBook para obter acesso ao catálogo de endereços. O ponteiro IAddrBook retornado pode ser usado para uma variedade de tarefas do catálogo de endereços, incluindo abrir contêineres de catálogo de endereços, localizar usuários de mensagens e exibir caixas de diálogo de endereço.

Notas para chamadores

O OpenAddressBook poderá retornar MAPI_W_ERRORS_RETURNED se não puder carregar um ou mais provedores de catálogo de endereços no perfil atual. Esse valor é um aviso e você deve tratar a chamada como bem-sucedida. Mesmo que todos os provedores de catálogo de endereços não tenham sido carregados, o OpenAddressBook ainda terá êxito, retornando MAPI_W_ERRORS_RETURNED e um ponteiro IAddrBook no parâmetro lppAdrBook . Como o OpenAddressBook sempre retorna um ponteiro IAddrBook válido, você deve liberá-lo quando terminar de usá-lo.

Se um ou mais provedores de catálogo de endereços não tiverem sido carregados, chame IMAPISupport::GetLastError para obter uma estrutura MAPIERROR que contenha informações sobre os provedores que não carregaram.

Confira também

IAddrBook : IMAPIProp

IMAPISession::OpenAddressBook

IMAPISupport: IUnknown