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 構造体を取得します。