IMAPISupport::OpenAddressBook

適用対象: Outlook 2013 | Outlook 2016

アドレス帳へのアクセスを提供します。

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

パラメーター

lpInterface

[in]アドレス帳へのアクセスに使用するインターフェイスを表すインターフェイス識別子 (IID) へのポインター。 有効な値は NULL で、標準アドレス帳インターフェイス IAddrBook とIID_IAddrBookを示します。

ulFlags

予約;は 0 にする必要があります。

lppAdrBook

[out]アドレス帳へのポインター。

戻り値

S_OK

アドレス帳へのアクセスが提供されました。

MAPI_W_ERRORS_RETURNED

呼び出しは成功しましたが、1 つ以上のアドレス帳プロバイダーを読み込めませんでした。 この警告が返されたら、呼び出しは成功として処理する必要があります。 この警告をテストするには、 HR_FAILED マクロを使用します。 詳細については、「 エラー処理にマクロを使用する」を参照してください。

注釈

IMAPISupport::OpenAddressBook メソッドは、すべてのサービス プロバイダー サポート オブジェクトに対して実装されます。 サービス プロバイダー (通常は緊密に結合されたメッセージ ストアとトランスポート プロバイダー) は、 OpenAddressBook を呼び出してアドレス帳にアクセスします。 返された IAddrBook ポインターは、アドレス帳コンテナーの開き方、メッセージング ユーザーの検索、アドレス ダイアログ ボックスの表示など、さまざまなアドレス帳タスクに使用できます。

呼び出し側への注意

OpenAddressBook は、現在のプロファイルに 1 つ以上のアドレス帳プロバイダーを読み込むことができない場合、MAPI_W_ERRORS_RETURNEDを返すことができます。 この値は警告であり、呼び出しを成功として扱う必要があります。 すべてのアドレス帳プロバイダーが読み込みに失敗した場合でも、OpenAddressBook は引き続き成功し、lppAdrBook パラメーターにMAPI_W_ERRORS_RETURNEDと IAddrBook ポインターが返されます。 OpenAddressBook は常に有効な IAddrBook ポインターを返すので、使用が完了したら解放する必要があります。

1 つ以上のアドレス帳プロバイダーの読み込みに失敗した場合は、 IMAPISupport::GetLastError を呼び出して、読み込まれていないプロバイダーに関する情報を含む MAPIERROR 構造体を取得します。

関連項目

IAddrBook : IMAPIProp

IMAPISession::OpenAddressBook

IMAPISupport: IUnknown