WsCloseListener 函式 (webservices.h)

導致指定的 接聽程式 停止接聽。

語法

HRESULT WsCloseListener(
  [in]           WS_LISTENER            *listener,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

參數

[in] listener

表示要關閉之接聽程式的 WS_LISTENER 結構的指標。

[in, optional] asyncContext

WS_ASYNC_CONTEXT 結構的指標,其中包含異步叫用函式的資訊。 傳遞 NULL 以同步叫用函式。

[in, optional] error

如果函式失敗,WS_ERROR結構的指標,該結構會收到其他錯誤資訊。

傳回值

如果函式成功,它會傳回NO_ERROR;否則會傳回 HRESULT 錯誤碼。

傳回碼 Description
WS_S_ASYNC
異步操作仍在擱置中。
WS_E_OPERATION_ABORTED
關閉是由 呼叫 WsAbortListener 中止,因為接聽程式正在關閉。
WS_E_INVALID_OPERATION
接聽程式處於不適當的狀態。
WS_E_OPERATION_TIMED_OUT
作業未在配置的時間內完成。
E_INVALIDARG
一或多個引數無效。
其他錯誤
此函式可能會傳回上面未列出的其他錯誤。

備註

關閉接聽程序之後,就可以安全地釋放接聽程式。

此作業允許接聽程式處於 WS_LISTENER_STATE_OPENWS_LISTENER_STATE_FAULTED 狀態。 (如需接聽程序狀態,請參閱 WS_LISTENER_STATE enumeration.)

當接聽程式關閉時,會中止任何使用 WsAcceptChannel 方法接受通道的擱置嘗試。 不過, WsCloseListener 會等候任何擱置的 I/O 完成,再繼續進行關閉程式。

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 webservices.h
程式庫 WebServices.lib
Dll WebServices.dll