MAPI サービス プロバイダー オブジェクト

適用対象: Outlook 2013 | Outlook 2016

サービス プロバイダーは、多くのオブジェクトを実装します。 一部は主に MAPI によって使用され、一部はクライアント アプリケーションで使用されます。 いくつかのオブジェクトは、すべての種類のサービス プロバイダーによって実装されます。残りの部分は、1 つのプロバイダーの種類に固有です。 次の表では、すべてのサービス プロバイダー オブジェクトについて説明します。

サービス プロバイダー オブジェクト 説明
アドレス帳コンテナー
アクティブなプロファイル内の 1 つのアドレス帳プロバイダーの受信者情報が含まれます。アドレス帳プロバイダーは、1 つ以上のアドレス帳コンテナーを持つことができます。
添付ファイル
メッセージに関連付ける追加のデータ (ファイルや OLE オブジェクトなど) が含まれます。
コントロール
ボタンを有効または無効にし、ボタンがクリックされたときに処理を開始します。
配布リスト
個々のメッセージ受信者のグループ化について説明します。
フォルダー
メッセージとその他のメッセージ コンテナーが含まれます。
Logon
サービス プロバイダーのイベント通知とクライアント要求を処理します。
メッセージング ユーザー
メッセージの個々の受信者について説明します。
メッセージ
1 つ以上の受信者に送信できる情報が含まれます。
メッセージ ストア
メッセージの階層的に編成されたデータベースとして機能します。
プロバイダー
サービス プロバイダーの起動とシャットダウンを処理します。
スプーラー フック
受信メッセージと送信メッセージに対して特別な処理を実行します。
状態
サービス プロバイダーの状態へのアクセスを提供します。
Table
データベース テーブルと同様に、行と列の形式でオブジェクト データの概要ビューにアクセスできます。

すべてのサービス プロバイダーは、プロバイダー オブジェクトとログオン オブジェクトを実装します。 プロバイダー オブジェクトは、厳密には簿記用です。これらは、MAPI によって起動プロセスとシャットダウン プロセスを制御するために使用されます。 ログオン オブジェクトは、一部のクライアント要求を間接的にサービスします。 たとえば、メッセージ ストア プロバイダーのログオン オブジェクトは、通知の登録とメッセージ ストア オブジェクトを開く要求を処理します。

プロバイダー オブジェクトとログオン オブジェクトは、実装を提供するサービス プロバイダーの種類に応じて異なるインターフェイスを実装します。 メッセージ ストア プロバイダーは 、IMSProvider : IUnknown および IMSLogon : IUnknown インターフェイスをプロバイダーおよびログオン オブジェクトに実装し、アドレス帳プロバイダーは IABProvider : IUnknown および IABLogon : IUnknown インターフェイスを実装し、トランスポート プロバイダーは IXPProvider : IUnknown および IXPLogon : IUnknown インターフェイスを実装します。

メッセージ フック プロバイダーは、スプーラー フック オブジェクト、または受信メッセージと送信メッセージをフィルター処理するオブジェクトを実装します。

サービス プロバイダーは通常、少数のオブジェクトのみを使用します。 ほとんどの場合、MAPI が提供するサポート オブジェクトを使用して、クライアント要求を実装するのに役立ちます。 サポート オブジェクトは、それを使用しているプロバイダーの種類に合わせてカスタマイズされます。 すべてのサービス プロバイダーに対して、サポート オブジェクトには、イベント通知の処理、構成プロパティの表示、オブジェクトの開き方、エラー処理のメソッドが含まれています。 残りのメソッドは、その使用に固有です。アドレス帳、メッセージ ストア、トランスポート プロバイダー、および構成サポート用にカスタマイズされたバージョンがあります。 たとえば、アドレス帳サポート オブジェクトには、詳細とカスタム受信者ダイアログ ボックスが表示されます。 メッセージ ストア サポート オブジェクトは、フォルダーとメッセージのコピー操作と移動操作をサポートします。 トランスポート プロバイダーのサポート オブジェクトには、MAPI スプーラーとの対話を容易にするメソッドが含まれています。

一部のサービス プロバイダーでは、テーブル データとプロパティ データ オブジェクト (MAPI が実装するユーティリティ オブジェクト) を使用します。 テーブル データ オブジェクトを使用すると、サービス プロバイダーはテーブルの基になるデータを管理できます。 プロパティ データ オブジェクトを使用すると、サービス プロバイダーはオブジェクトとプロパティへのアクセスを設定できます。

プロパティを転送するためのトランスポートニュートラル カプセル化形式 (TNEF) をサポートするトランスポート プロバイダーは、MAPI が ITnef : IUnknown インターフェイスをサポートするために実装する TNEF オブジェクトを使用します。 詳細については、「 TNEF-Enabled トランスポート プロバイダーの開発」を参照してください。

関連項目

ITnef : IUnknown

IMSProvider : IUnknown

IMSLogon : IUnknown

IABProvider : IUnknown

IABLogon : IUnknown

IXPProvider : IUnknown

IXPLogon : IUnknown

TNEF-Enabled トランスポート プロバイダーの開発