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.