共用方式為


NdisCmDispatchIncomingCloseCall 函式 (ndis.h)

NdisCmDispatchIncomingCloseCall 會告訴用戶端卸載作用中或提供的通話,通常是因為呼叫管理員已收到來自網路以關閉連線的要求。

語法

void NdisCmDispatchIncomingCloseCall(
  [in]           NDIS_STATUS CloseStatus,
  [in]           NDIS_HANDLE NdisVcHandle,
  [in, optional] PVOID       Buffer,
  [in]           UINT        Size
);

參數

[in] CloseStatus

指定 CM 決定NDIS_STATUS_XXX,指出中斷連線要求的原因。 在一般網路作業期間,呼叫管理員會傳遞NDIS_STATUS_SUCCESS,表示已收到遠端合作物件起始的要求,以關閉作用中的通話。

[in] NdisVcHandle

指定要中斷連線之呼叫之 VC 的句柄。 當 VC 最初由呼叫管理員或用戶端建立時,NDIS 會提供此句柄,NdisCoCreateVc

[in, optional] Buffer

呼叫端配置的駐地緩衝區指標,其中包含其他通訊協定特定的中斷連線數據,如果有的話。 視基礎媒體而定,此指標可以 NULL

[in] Size

指定緩衝區的位元組大小,如果 Buffer為 NULL,則為零。

傳回值

沒有

言論

在一般網路作業過程中,獨立 CM 會呼叫 NdisCmDispatchIncomingCloseCall,並將 CloseStatus 設為 NDIS_STATUS_SUCCESS,因為遠端節點上的對應用戶端已呼叫 NdisCloseCall

不過,如果發生下列其中一項,呼叫管理員也可以呼叫 NdisCmDispatchIncomingCloseCall

  • 通話管理員已通知用戶端連入通話供應專案。 CM 的時機 ProtocolCmIncomingCallComplete 函式是以用戶端接受來呼叫,它會驗證用戶端已修改的輸入呼叫參數。 ProtocolCmIncomingCallComplete 會決定用戶端提議連線不支援的呼叫參數,因此它會呼叫 NdisCmDispatchIncomingCloseCall
  • 異常的網路狀況會強制呼叫管理員終止作用中的通話。 例如,如果呼叫管理員在此用戶端與連線的遠端合作對象之間的任何連結中斷時收到通知,CM 會呼叫 NdisCmDispatchIncomingCloseCall,以防止客戶端嘗試(或預期)在這類中斷的連線上進行進一步數據傳輸。
卸除任何呼叫之後,VC 的原始建立者會負責在釋放與 VC 相關聯的任何其他資源之後,呼叫 NdisCoDeleteVc

呼叫 NdisCmDispatchIncomingCloseCall 會導致 NDIS 呼叫用戶端的 ProtocolClIncomingCloseCall 函式。

只有向 NDIS 註冊為通訊協定驅動程式的獨立呼叫管理員,才能呼叫 NdisCmDispatchIncomingCloseCall。 提供通話管理支援通話的連接導向迷你埠驅動程式請改為 NdisMCmDispatchIncomingCall

要求

要求 價值
最低支援的用戶端 支援 NDIS 6.0 和 NDIS 5.1 驅動程式(請參閱 Windows Vista 中的 NdisCmDispatchIncomingCloseCall (NDIS 5.1)。 支援 NDIS 5.1 驅動程式(請參閱 Windows XP 中的 NdisCmDispatchIncomingCloseCall (NDIS 5.1) 。
目標平臺 桌面
標頭 ndis.h (包括 Ndis.h)
連結庫 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 Irql_CallManager_Function(ndis)

另請參閱

NdisCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx