rpcServerUnregisterIf 函式 (rpcdce.h)
RpcServerUnregisterIf 函式會從 RPC 運行時間連結庫登錄中移除介面。
語法
RPC_STATUS RpcServerUnregisterIf(
RPC_IF_HANDLE IfSpec,
UUID *MgrTypeUuid,
unsigned int WaitForCallsToComplete
);
參數
IfSpec
要從登錄中移除的介面。
指定 Null 值,以移除先前向 MgrTypeUuid 參數中指定的類型 UUID 值註冊的所有介面。
MgrTypeUuid
要從登錄中移除之管理員進入點向量類型 UUID 的指標, (EPV) 。 MgrTypeUuid 的值應該與呼叫 RpcServerRegisterIf 函式、RpcServerRegisterIf2 函式或 RpcServerRegisterIfEx 函式中提供的值相同。
指定 Null 值,從登錄中移除所有先前已註冊類型 UUID 的 IfSpec 參數中指定的介面。
指定 nil UUID,以從登錄中移除 MIDL 產生的預設管理員 EPV。 在此情況下,所有以非 nil 類型 UUID 註冊的經理 EPV 都會保持註冊狀態。
WaitForCallsToComplete
旗標,指出是否要立即從登錄中移除介面,或等到所有目前的呼叫都完成為止。
指定零值以忽略進行中的呼叫,並立即從登錄中移除 介面。 指定要等到所有作用中呼叫完成為止的非零值。
傳回值
值 | 意義 |
---|---|
|
呼叫成功。 |
|
管理員類型未知。 |
|
介面未知。 |
備註
伺服器會呼叫 RpcServerUnregisterIf ,以移除介面與管理員 EPV 之間的關聯。 若要指定要在 MgrTypeUuid 參數中移除的管理員 EPV,請提供 呼叫 RpcServerRegisterIf 中指定的類型 UUID 值。 從登錄中移除介面之後,用戶端應用程式就無法再使用介面。
從登錄中移除介面時,RPC 運行時間連結庫會停止接受該介面的新呼叫。 目前在介面上執行的呼叫可以完成,包括回呼。
下表摘要說明 RpcServerUnregisterIf 的行為。
IfSpec | MgrTypeUuid | 行為 |
---|---|---|
非 Null | 非 Null | 從登錄中移除與指定參數相關聯的管理員 EPV。 |
非 Null | NULL | 拿掉與 IfSpec 參數相關聯的所有管理員 EPV。 |
NULL | 非 Null | 拿掉與 MgrTypeUuid 參數相關聯的所有管理員 EPV。 |
NULL | NULL | 拿掉所有經理 EPV。 此呼叫會影響防止伺服器接收任何新的遠端過程調用,因為所有介面的所有管理員 EPV 都已經取消註冊。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | rpcdce.h (包含 Rpc.h) |
程式庫 | Rpcrt4.lib |
Dll | Rpcrt4.dll |