RpcServerInterfaceGroupDeactivate 函式 (rpcdce.h)
RpcServerInterfaceGroupDeactivate 函式會告知 RPC 運行時間嘗試關閉指定的介面群組,如果客戶端活動未完成,可以選擇性地中止作業。
語法
RPC_STATUS RpcServerInterfaceGroupDeactivate(
[in] RPC_INTERFACE_GROUP IfGroup,
[in] unsigned long ForceDeactivation
);
參數
[in] IfGroup
RpcServerInterfaceGroupCreate的RPC_INTERFACE_GROUP,定義要停用的介面群組
[in] ForceDeactivation
如果 為 TRUE,RPC 執行時間應該忽略客戶端活動,並無條件地停用介面群組。 如果 為 FALSE,則如果發生新的活動,應該中止作業。
傳回值
值 | 意義 |
---|---|
|
呼叫成功。 |
|
ForceDeactivation 為 FALSE ,而且有未完成的客戶端活動。 |
備註
RpcServerInterfaceGroupDeactivate 是由伺服器應用程式用來取消註冊介面群組中的介面和端點。 它會執行 RPC 伺服器應用程式所需的大量關機工作。 它會執行下列作業:
- 從 RPC 端點對應程式取消註冊端點和介面。
- 從伺服器運行時間取消註冊端點。
- 從伺服器運行時間取消註冊介面。
- 如果沒有任何其他介面存在,告知運行時間停止接聽呼叫。
如果 ForceDeactivation 為 FALSE,RpcServerInterfaceGroupDeactivate 只有在沒有未完成的用戶端活動時,才會停用介面群組。 如果在停用程式期間到達新的活動,則會傳回 RPC_S_SERVER_TOO_BUSY 。 在此情況下,作業會回復,而且介面群組會繼續接收和分派呼叫。
如果 ForceDeactivation 為 TRUE,RpcServerInterfaceGroupDeactivate 不會失敗。
服務應用程式可以從閑置回呼函式 RpcServerInterfaceGroupCreate 呼叫 RpcServerInterfaceGroupDeactivate,並將 ForceDeactivation 設定為 FALSE。 搭配 RPC 服務啟動觸發程式使用時,這可讓他們安全地閒置停止,而不會遺漏來自潛在用戶端的呼叫。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | rpcdce.h (包含 Rpc.h) |
程式庫 | Rpcrt4.lib |
Dll | Rpcrt4.dll |