次の方法で共有


WsShutdownSessionChannel 関数 (webservices.h)

セッション チャネルのメッセージの終了を通知するために使用されます。

構文

HRESULT WsShutdownSessionChannel(
  [in]           WS_CHANNEL             *channel,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

パラメーター

[in] channel

シャットダウンするセッション チャネル。

[in, optional] asyncContext

関数を非同期的に呼び出す方法に関する情報。同期的に呼び出す場合は NULL

[in, optional] error

関数が失敗した場合に追加のエラー情報を格納する場所を指定します。

戻り値

この関数は、これらの値のいずれかを返すことができます。

リターン コード 説明
WS_E_INVALID_OPERATION
これは、チャネルが WS_CHANNEL_STATE_OPEN 状態でない場合に返されます。

注釈

この関数は、チャネルに対してすべてのメッセージが送信されたことをリモート パーティに示します。

リモート パーティは、メッセージの受信時に WS_S_END 戻り値を探すことで、チャネルで使用できるメッセージがなくなったことを検出できます。 ( 「Windows Web Services の戻り値」を参照してください)。ただし、「 チャネル レイヤーの概要」で説明されているように、アプリケーション以外のメッセージがチャネルによってフィルター処理された場合にも、メッセージが使用できなくなる可能性があります。 セッションのシャットダウンは、以前のメッセージが受信されたかどうかを追跡することで、メッセージ フィルター処理と区別できます。 以前のメッセージを受信した場合、セッションはシャットダウンされました。

この関数は、メッセージの送信をサポートするセッションを 含むWS_CHANNEL_TYPE で作成されたチャネルにのみ適用されます。

チャネルは WS_CHANNEL_STATE_OPEN 状態である必要があります。

この関数が成功した場合、 WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN プロパティの値は TRUE になります。

セッション チャネルがシャットダウンされると、チャネルでメッセージを送信しようとしたり、チャネルをシャットダウンしようとすると 、WS_E_INVALID_OPERATIONが返されます。

この関数の呼び出しは省略可能です。 WS_CHANNEL_STATE_OPENのときに WsCloseChannel を使用してセッション チャネルを閉じると、閉じるプロセスの一環としてチャネルが自動的にシャットダウンされます。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll