NdisCmCloseCallComplete 函式 (ndis.h)
NdisCmCloseCallComplete 會傳回用戶端要求的最終狀態,而呼叫管理員先前傳回NDIS_STATUS_PENDING,以終止呼叫。
語法
void NdisCmCloseCallComplete(
[in] NDIS_STATUS Status,
[in] NDIS_HANDLE NdisVcHandle,
[in, optional] NDIS_HANDLE NdisPartyHandle
);
參數
[in] Status
指定用戶端要求的最終狀態,表示 CM 關閉連線,NDIS_STATUS_SUCCESS或任何 CM 決定的NDIS_STATUS_XXX ,但NDIS_STATUS_PENDING除外。
[in] NdisVcHandle
指定呼叫之 VC 的句柄。 當 VC 最初是由呼叫管理員或用戶端使用 NdisCoCreateVc 建立時,NDIS 會提供此句柄。 最近,呼叫管理員會從呼叫 MgrVcContext 所指定的每一 VC 狀態取得此句柄,並將其作為輸入參數傳遞給它的 ProtocolCmCloseCall 函式。
[in, optional] NdisPartyHandle
如果 NdisVcHandle 代表點對點 VC,或多點連接上最後一個剩餘合作物件的句柄,則指定 NULL,這是從其 CallMgrPartyContext 所指定之 CallMgrPartyContext 所指定,以輸入參數的形式傳遞給其 ProtocolCmCloseCall 函式的 CM。
傳回值
無
備註
如果獨立呼叫管理員的 ProtocolCmCloseCall 函式傳回NDIS_STATUS_PENDING,則 CM 必須接著呼叫 NdisCmCloseCallComplete ,以通知用戶端和 NDIS 其嘗試中斷連線已順利完成,不論成功還是發生錯誤。 呼叫 NdisCmCloseCallComplete 會導致 NDIS 呼叫用戶端的 ProtocolCloseCallComplete 函式 。
如果NDIS_STATUS_SUCCESS傳遞為 Status,則呼叫管理員應該在呼叫 NdisCmCloseCallComplete 時,考慮 NdisVcHandle (和 NdisPartyHandle,如果有任何) 無法透過網路傳輸。 如果呼叫管理員最初建立 VC,它應該使用剛傳遞至 NdisCmCloseCallComplete 的相同 NdisVcHandle 呼叫 NdisCoDeleteVc。 如果用戶端已建立此 VC,呼叫管理員預期會使用 呼叫其 ProtocolCoDeleteVc 函式
ProtocolVcContext,其中的 NdisVcHandle 與輸入參數相同。
只有向 NDIS 註冊為通訊協定驅動程式的獨立呼叫管理員,才能呼叫 NdisCmCloseCallComplete。 提供整合式呼叫管理支援的連線導向迷你埠驅動程式會改為呼叫 NdisMCmCloseCallComplete 。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 支援 NDIS 6.0 和 NDIS 5.1 驅動程式, (請參閱 Windows Vista 中的 NdisCmCloseCallComplete (NDIS 5.1) ) 。 (支援 NDIS 5.1 驅動程式,請參閱 Windows XP 中的 NdisCmCloseCallComplete (NDIS 5.1) ) 。 |
目標平台 | 桌面 |
標頭 | ndis.h (包含 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_CallManager_Function () |