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
指定函式失敗時應該儲存其他錯誤資訊的位置。
傳回值
此函式可以傳回其中一個值。
傳回碼 | Description |
---|---|
|
如果通道不是處於 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 |
程式庫 | WebServices.lib |
Dll | WebServices.dll |