MAPI アドレス帳プロバイダーの開発

適用対象: Outlook 2013 | Outlook 2016

アドレス帳プロバイダーは、クライアント アプリケーション、メッセージ ストアとトランスポート プロバイダー、MAPI に受信者情報を提供します。 受信者情報は、コンテナーと呼ばれるストレージ コンパートメントに階層的に編成されます。 プロファイル内のすべてのアドレス帳は、1 つまたは複数の最上位レベルまたは親のコンテナーを MAPI アドレス帳に提供します。これは、セッション内のすべてのアドレス帳プロバイダーからの受信者情報の統合ビューです。 クライアントやその他のサービス プロバイダーがアドレス帳プロバイダーのデータにアクセスするのは、MAPI アドレス帳を介して行われます。

MAPI は、次の方法で統合アドレス帳を構築します。

  1. 各アドレス帳プロバイダーから最上位のコンテナーを取得する。

  2. 各コンテナーの階層テーブルの取得。

  3. 各階層テーブルを統合階層テーブルにコピーする。 これは、クライアントに公開される統合階層テーブルです。

MAPI では、アドレス帳プロバイダーのライターにいくつかの要件が課されます。 アドレス帳ライターとして実装できる機能の範囲はさまざまで柔軟です。 たとえば、プロバイダーは、特定の種類の受信者情報の読み取り専用ビューを提供することや、機能の完全なセットを実装することに限定できます。クライアントまたはプロバイダーが受信者データを追加または変更したり、カスタマイズされたビューを定義するための検索条件を適用したりできます。

プロバイダーのデータは、ファイルまたはデータベース内、またはリモート サーバー上にローカルに存在できます。 一部のアドレス帳プロバイダーは、トランスポート プロバイダーと緊密に組み合わせて特定のメッセージング システムを操作することを目的としていますが、他のプロバイダーは任意のメッセージング システムで動作できます。

MAPI は、1 つの変更可能なコンテナーを実装し、他のコンテナーからコピーされた受信者情報と直接作成された情報を保持できる、個人用アドレス帳 (PAB) と呼ばれる特殊な種類のアドレス帳プロバイダーを定義します。 どのアドレス帳プロバイダーでも PAB を実装でき、複数の PAB をプロファイルに追加できますが、1 つのセッション中に PAB として動作するように指定できるのは、これらのプロバイダーの 1 つだけです。