高速シャットダウンの概要
適用対象: Outlook 2013 | Outlook 2016
高速シャットダウンは、MAPI クライアントがクライアント プロセスを終了する前にデータと設定を保存するアクティブな MAPI セッションを持つすべてのプロバイダーに通知して、クライアント プロセスの迅速なシャットダウンを開始するためのメカニズムです。 このトピックでは、高速シャットダウンの基本的なメカニズムについて説明します。
Microsoft Outlook 2010以降、MICROSOFT OUTLOOK 2013を含め、MAPI サブシステムは IMAPIClientShutdown : IUnknown インターフェイスを提供します。 Outlook やその他の MAPI クライアントは、クライアント プロセスを終了するための既定のメカニズムとして高速シャットダウンを採用できます。 クライアント コンピューターの Windows レジストリのユーザー レベルの設定は、そのコンピューター上のそのユーザーのすべての MAPI クライアントの高速シャットダウンの導入を制御します。 レジストリ設定の詳細については、「 高速シャットダウン ユーザー オプション」を参照してください。
MAPI クライアントが高速シャットダウンを採用する必要がある場合は、 IMAPIClientShutdown : IUnknown インターフェイスを使用する必要があります。 クライアントがシャットダウンを試みた場合の一般的なイベントのコースを次に示します。
MAPI クライアントは、 IMAPIClientShutdown::QueryFastShutdown メソッドを呼び出して、MAPI サブシステムが高速シャットダウンをサポートしているかどうかを判断することで、シャットダウンを開始します。
MAPI サブシステムは、次の手順を使用して、クライアントの IMAPIClientShutdown::QueryFastShutdown 呼び出しに対して使用可能な高速シャットダウン サポートで応答します。
MAPI サブシステムは、MAPI クライアント プロセスがアクティブ MAPI セッションを持つ MAPI プロバイダーごとに IMAPIProviderShutdown::QueryFastShutdown メソッドを呼び出します(プロバイダーが IMAPIProviderShutdown: IUnknown インターフェイスを実装している場合)。
注:
MAPI サブシステムは常に、 IMAPIProviderShutdown を 介して MAPI プロバイダーに対してクエリを実行し、次の順序で各 MAPI セッション内の IUnknown インターフェイスに通知します。
- トランスポート プロバイダー
- アドレス帳プロバイダー
- ストア プロバイダー
クライアント コンピューター上のそのユーザーの高速シャットダウン レジストリ設定に応じて、MAPI サブシステムは IMAPIClientShutdown::QueryFastShutdown に適切な戻りコードを指定します。 戻りコードは、S_OKまたはMAPI_E_NO_SUPPORTです。
MAPI クライアントは IMAPIClientShutdown::NotifyProcessShutdown メソッドを呼び出して、シャットダウンの意図を MAPI サブシステムに示します。
MAPI サブシステムは、MAPI クライアントがシャットダウンすることを読み込まれた各 MAPI プロバイダーに示します。 IMAPIProviderShutdown : IUnknown インターフェイスを実装しているプロバイダーの場合、MAPI サブシステムは対応する IMAPIProviderShutdown::NotifyProcessShutdown メソッドを呼び出します。
MAPI クライアントは IMAPIClientShutdown::D oFastShutdown メソッドを呼び出して、クライアント プロセスがすぐに終了していることを MAPI サブシステムに示します。
MAPI サブシステムは、MAPI クライアント プロセスが終了していることを読み込まれた各 MAPI プロバイダーに示します。 IMAPIProviderShutdown : IUnknown インターフェイスを実装しているプロバイダーの場合、MAPI サブシステムは対応する IMAPIProviderShutdown::D oFastShutdown メソッドを呼び出します。 この時点で、これらの MAPI プロバイダーは、データや設定の保存など、必要なすべてのアクションが、MAPI クライアントがすべての参照を直ちに切断して終了するための準備として完了していることを確認する必要があります。