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_XXX determinato da CM, 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 dalla parte 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 dati di disconnessione specifici del protocollo aggiuntivi, 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

Durante le normali operazioni di rete, un cm autonomo chiama NdisCmDispatchIncomingCloseCall con 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 seguenti operazioni:

  • Il gestore chiamate riceve una notifica a un client di un'offerta di chiamata in ingresso. Quando il CM è La funzione ProtocolCmIncomingCallComplete viene chiamata con l'accettazione del client, convalida i parametri di chiamata di input, che il client ha modificato. ProtocolCmIncomingCallComplete determina che il client propone parametri di chiamata non supportati per la connessione, quindi chiama NdisCmDispatchIncomingCloseCall.
  • Le condizioni di rete anomale forzano il gestore chiamate a rimuovere le chiamate attive. Ad esempio, se il gestore chiamate riceve una notifica quando qualsiasi collegamento sulla connessione tra questo client e la parte remota della connessione viene interrotta, il cms chiamerà NdisCmDispatchIncomingCloseCall per impedire al client di tentare (o aspettarsi) ulteriori trasferimenti di dati in una connessione interrotta.
Dopo aver interrotto qualsiasi chiamata, l'autore originale del VC è responsabile della chiamata a NdisCoDeleteVc dopo aver rilasciato tutte le risorse aggiuntive associate al VC.

Una chiamata a NdisCmDispatchIncomingCloseCall causa la chiamata a NDIS Funzione ProtocolClIncomingCloseCall .

Solo i gestori di 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 .

Requisiti

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 (includere Ndis.h)
Libreria Ndis.lib
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI Irql_CallManager_Function(ndis)

Vedi anche

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx