IMAPISupport::StoreLogoffTransports
適用対象: Outlook 2013 | Outlook 2016
メッセージ ストアの順番にリリースを要求します。
HRESULT StoreLogoffTransports(
ULONG FAR * lpulFlags
);
パラメーター
lpulFlags
[in, out]メッセージ ストアログオフの発生方法を制御するフラグのビットマスク。 入力時に、このパラメーターのすべてのフラグは相互に排他的です。呼び出しごとに設定できるフラグは、次のうち 1 つだけです。
LOGOFF_ABORT
ログオフする前に、このストアのトランスポート プロバイダー アクティビティを停止する必要があります。 アクティビティが停止し、MAPI スプーラーがストアからログオフした後、コントロールがクライアントに返されます。 トランスポート アクティビティが発生している場合、ログオフは発生せず、MAPI スプーラーまたはトランスポート プロバイダーの動作の変更は発生しません。 現在アクティビティがない場合、MAPI スプーラーはストアを解放します。
LOGOFF_NO_WAIT
MAPI スプーラーは、ストアを解放し、送信する準備ができているすべての送信メールが送信された直後に、クライアントに制御を返す必要があります。 メッセージ ストアに既定の受信トレイがある場合は、処理中のメッセージが受信され、さらに受信が無効になります。
LOGOFF_ORDERLY
MAPI スプーラーは、保留中のメッセージの処理が完了した直後に、ストアを解放し、クライアントに制御を返す必要があります。 新しいメッセージを処理する必要はありません。
LOGOFF_PURGE
LOGOFF_NO_WAIT フラグと同じように動作します。 LOGOFF_PURGE フラグは、完了後に呼び出し元に制御を返します。
LOGOFF_QUIET
トランスポート プロバイダーのアクティビティが発生している場合は、ログオフを実行しないでください。 実行されるアクティビティの種類は、出力時にフラグとして返されます。
出力時に、MAPI スプーラーは次のフラグの 1 つ以上を返すことができます。
LOGOFF_COMPLETE
ログオフは完了できます。 ストアに関連付けられているすべてのリソースが解放され、オブジェクトが無効になりました。 MAPI スプーラーが実行されているか、すべての要求を実行します。 この時点では、メッセージ ストアの IUnknown::Release メソッドのみを呼び出す必要があります。
LOGOFF_INBOUND
メッセージは現在、1 つ以上のトランスポート プロバイダーからストアに送信されています。
LOGOFF_OUTBOUND
メッセージは現在、1 つ以上のトランスポート プロバイダーによってストアから送信されています。
LOGOFF_OUTBOUND_QUEUE
現在、ストアの送信キューにメッセージがあります。
戻り値
S_OK
ログオフ プロシージャが成功しました。
注釈
IMAPISupport::StoreLogoffTransports メソッドは、メッセージ ストア プロバイダーサポート オブジェクトに実装されています。 メッセージ ストア プロバイダーは StoreLogoffTransports を呼び出して、メッセージ ストアが閉じているときの MAPI によるトランスポート プロバイダーアクティビティの処理方法をクライアント アプリケーションに制御します。
別のプロセスで同じプロファイルに対して開いているストアがログオフされている場合、MAPI は StoreLogoffTransports の呼び出しを無視し、 lpulFlags パラメーターにLOGOFF_COMPLETEフラグを返します。
StoreLogoffTransports からの戻り値に続くストア プロバイダーの動作は、システムの状態を示し、ログオフ動作のクライアント命令を伝達する lpulFlags の値に基づいている必要があります。
呼び出し側への注意
StoreLogoffTransports は通常、ストア プロバイダーの IMsgStore::StoreLogoff メソッドから呼び出されます。 ただし、メッセージ ストアの IUnknown::Release メソッドから呼び出すこともできます。 メッセージ ストアの Release メソッドを実装して、StoreLogoffTransports の呼び出しが発生したかどうかをチェックできます。 呼び出しが発生していない場合は、LOGOFF_ABORT フラグを設定して StoreLogoffTransports を呼び出します。
lpulFlags パラメーターは、クライアントがメッセージ ストアをシャットダウンする必要がある方法を示すフラグに設定されます。 StoreLogoff の呼び出しで対応するパラメーターの設定に基づいて、ulFlags の適切な設定を決定します。 つまり、クライアントが ulFlags を LOGOFF_ORDERLY に設定して StoreLogoff メソッドを呼び出した場合は、ulFlags を LOGOFF_ORDERLY に設定して StoreLogoffTransports を呼び出す必要があります。
メッセージ ストアのログオフ プロセスの詳細については、「 メッセージ ストア プロバイダーのシャットダウン」を参照してください。