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 的句柄。 此句柄是由 NDIS 在最初建立 VC 時,由呼叫管理員或用戶端使用 NdisCoCreateVc 提供。

[in, optional] Buffer

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

[in] Size

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

傳回值

備註

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

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

  • 通話管理員已向用戶端通知來電供應專案。 CM 的時機 ProtocolCmIncomingCallComplete 函式是透過用戶端接受呼叫,它會驗證該用戶端已修改的輸入呼叫參數。 ProtocolCmIncomingCallComplete 會判斷用戶端正在建議連線不支援的呼叫參數,因此它會呼叫 NdisCmDispatchIncomingCloseCall
  • 異常網路狀況會強制呼叫管理員終止作用中的通話。 例如,如果當此用戶端與連線遠端方之間的任何連線連結關閉時,呼叫管理員會呼叫 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