トランスポート プロバイダーおよび MAPI スプーラーの動作モデルTransport Provider and MAPI Spooler Operational Model

適用されます: OutlookApplies to: Outlook

トランスポート プロバイダーの初期化、起動、処理、シャット ダウン、二つの後処理は、一連の MAPI スプーラーからトランスポート プロバイダーへの呼び出しによって実行されます。Transport provider initialization, startup, processing, shutdown and deinitialization are accomplished by a series of calls from the MAPI spooler to the transport provider. 呼び出しは次のように順序付けられました。The calls are sequenced as follows:

  1. MAPI スプーラー XPProviderInit関数を呼び出し、オブジェクトがサポート、プロバイダー オブジェクトを取得、トランスポート プロバイダーが、MAPI スプーラーが互換性のある範囲の MAPI のバージョン番号をサポートすることを確認します。The MAPI spooler calls the XPProviderInit function, passes a support object, gets the provider object, and checks that the transport provider and MAPI spooler support a compatible range of MAPI version numbers.

  2. MAPI スプーラーは、のIXPProvider::TransportLogonメソッドを呼び出して、 IXPProvider: IUnknownインタ フェースです。The MAPI spooler calls the IXPProvider::TransportLogon method of the IXPProvider : IUnknown interface. MAPI スプーラーとプロファイルの現在のセクション内の資格情報を使用してトランスポート プロバイダーの間でセッションが確立されます。A session is established between the MAPI spooler and the transport provider with the credentials in the current section of the profile. トランスポート プロバイダーでは、ログオン オブジェクトを返します。The transport provider returns a logon object.

  3. MAPI スプーラーは、 IXPLogon::AddressTypesメソッドを呼び出します。The MAPI spooler calls the IXPLogon::AddressTypes method. トランスポート プロバイダーは、受け入れることは、一意識別子 (Uid) と電子メール アドレスの種類の一覧を返します。The transport provider returns a list of the unique identifiers (UIDs) and email address types it will accept.

  4. トランスポート プロバイダーでは、MAPI の状態テーブル内の行を作成するIMAPISupport::ModifyStatusRowメソッドを呼び出します。The transport provider calls the IMAPISupport::ModifyStatusRow method to create its row in the MAPI status table.

  5. MAPI スプーラーでは、メッセージの送信と受信を有効にするIXPLogon::TransportNotifyメソッドを呼び出します。The MAPI spooler calls the IXPLogon::TransportNotify method to enable message transmission and reception.

  6. TransportLogon呼び出し、その戻り値のトランスポート プロバイダーによって要求されると、MAPI スプーラーは定期的にIXPLogon::Idleメソッドを呼び出します。If requested by the transport provider in its return for the TransportLogon call, the MAPI spooler periodically calls the IXPLogon::Idle method. アイドル処理では、トランスポート プロバイダーが新しいメッセージの基になるメッセージング システムをポーリングまたはその他の優先度の低いタスクを実行する必要がある場合に便利です。Idle processing is useful if the transport provider needs to poll the underlying messaging system for new messages or perform other low-priority tasks.

  7. MAPI スプーラーとトランスポート プロバイダー メッセージを送信します。The MAPI spooler and transport provider send and receive messages. 詳細については、メッセージの送信のモデルメッセージの受信のモデルを参照してください。For more information, see Message Submission Model and Message Reception Model. MAPI スプーラーは、トランスポートの要求を処理し、サポート、メッセージ、および添付ファイルのオブジェクトを呼び出します。The MAPI spooler services transport requests and calls on support, message, and attachment objects.

  8. MAPI スプーラーでは、メッセージの送受信を無効にするTransportNotifyメソッドを呼び出します。The MAPI spooler calls the TransportNotify method to disable message transmission and reception.

  9. MAPI スプーラーは、ログオン、およびプロバイダーのオブジェクトを解放します。The MAPI spooler releases the logon and provider objects. 詳細については、 IXPProvider::Shutdownメソッドを参照してください。For more information, see the IXPProvider::Shutdown method.