Condividi tramite


Funzione NdisCmDispatchIncomingCloseCall (ndis.h)

NdisCmDispatchIncomingCloseCall indica a un client di rimuovere una chiamata attiva o offerta, in genere perché il gestore chiamate ha ricevuto una richiesta dalla rete per chiudere la connessione.

Sintassi

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

Parametri

[in] CloseStatus

Specifica un NDIS_STATUS_determinato da CMXXX che indica il motivo della richiesta di disconnessione. Durante le normali operazioni di rete, un gestore chiamate passa NDIS_STATUS_SUCCESS per indicare che ha ricevuto una richiesta, avviata dall'entità remota, per chiudere una chiamata attiva.

[in] NdisVcHandle

Specifica l'handle per il vc della chiamata disconnessa. Questo handle è stato fornito da NDIS quando il vc è stato originariamente creato, indipendentemente dal gestore chiamate o dal client, con NdisCoCreateVc.

[in, optional] Buffer

Puntatore a un buffer residente allocato dal chiamante contenente altri dati di disconnessione specifici del protocollo, se presenti. A seconda del supporto sottostante, questo puntatore può essere null

[in] Size

Specifica le dimensioni in byte del buffer, zero se buffer è NULL.

Valore restituito

Nessuno

Osservazioni

Nel corso delle normali operazioni di rete, un cm autonomo chiama NdisCmDispatchIncomingCloseCall con il CloseStatus impostato su NDIS_STATUS_SUCCESS perché il client corrispondente nel nodo remoto ha chiamato NdisClCloseCall.

Tuttavia, un gestore chiamate può anche chiamare NdisCmDispatchIncomingCloseCall se si verifica una delle condizioni seguenti:

  • Il gestore chiamate ha informato un client di un'offerta di chiamata in ingresso. Quando il cm è ProtocolCmIncomingCallComplete funzione viene chiamata con l'accettazione del client, convalida i parametri di chiamata di input modificati dal client. ProtocolCmIncomingCallComplete determina che il client propone parametri di chiamata non supportati per la connessione, quindi chiama NdisCmDispatchIncomingCloseCall.
  • Condizioni di rete anomale forzano il gestore chiamate a rimuovere le chiamate attive. Ad esempio, se il gestore chiamate riceve una notifica quando un collegamento alla connessione tra questo client e la parte remota alla connessione si arresta, il cm chiama NdisCmDispatchIncomingCloseCall per impedire al client di tentare (o prevedere) ulteriori trasferimenti di dati in una connessione di questo tipo interrotta.
Dopo aver interrotto qualsiasi chiamata, l'autore originale del vc è responsabile della chiamata di NdisCoDeleteVc dopo il rilascio di eventuali risorse aggiuntive associate al vc.

Una chiamata a NdisCmDispatchIncomingCloseCall fa sì che NDIS chiami il client funzione ProtocolClIncomingCloseCall.

Solo i gestori chiamate autonomi, che si registrano con NDIS come driver di protocollo, possono chiamare NdisCmDispatchIncomingCloseCall. Driver miniport orientati alla connessione che forniscono una chiamata di supporto per la gestione delle chiamate NdisMCmDispatchIncomingCall.

Fabbisogno

Requisito Valore
client minimo supportato Supportato per i driver NDIS 6.0 e NDIS 5.1 (vedere NdisCmDispatchIncomingCloseCall (NDIS 5.1) in Windows Vista. Supportato per i driver NDIS 5.1 (vedere NdisCmDispatchIncomingCloseCall (NDIS 5.1)) in Windows XP.
piattaforma di destinazione Desktop
intestazione ndis.h (include Ndis.h)
libreria Ndis.lib
IRQL <= DISPATCH_LEVEL
regole di conformità DDI Irql_CallManager_Function(ndis)

Vedere anche

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx