Condividi tramite


Funzione NdisCancelSendPackets (ndis.h)

Nota NDIS 5. x è stato deprecato e sostituito da NDIS 6. x. Per i nuovi driver NDIS, vedere Driver di rete a partire da Windows Vista. Per informazioni sulla conversione di NDIS 5. driver x a NDIS 6. x, vedere Porting NDIS 5.x Drivers to NDIS 6.0.

NdisCancelSendPackets annulla la trasmissione di tutti i pacchetti contrassegnati con l'identificatore di annullamento specificato nel driver miniport identificato dall'handle di associazione.

Sintassi

void NdisCancelSendPackets(
  [in] NDIS_HANDLE NdisBindingHandle,
  [in] PVOID       CancelId
);

Parametri

[in] NdisBindingHandle

Specifica l'handle restituito da NdisOpenAdapter che identifica la scheda di interfaccia di rete o la scheda virtuale a cui si applica l'annullamento.

[in] CancelId

Puntatore all'identificatore di annullamento. Questo identificatore specifica il pacchetto o il gruppo di pacchetti per cui la trasmissione viene annullata.

Valore restituito

Nessuno

Osservazioni

I protocolli di trasporto eseguono il mapping dei runtime di integrazione ricevuti da software di livello superiore a pacchetti NDIS, che i protocolli inviano quindi a driver di livello inferiore per la trasmissione. Se un IRP viene annullato, un protocollo di trasporto può chiamare la funzione NdisCancelSendPackets per annullare la trasmissione in sospeso del pacchetto NDIS corrispondente.

La funzione NdisCancelSendPackets annulla le trasmissioni di pacchetti in un'unica associazione. Per annullare le trasmissioni di pacchetti su più di un'associazione, un driver intermedio o di protocollo deve chiamare il NdisCancelSendPackets funzione una volta per ogni associazione.

Il protocollo o il driver intermedio deve garantire che NdisBindingHandle, che rappresenta l'associazione del driver all'adattatore, rimanga valido per la durata della chiamata a NdisCancelSendPackets. Ovvero, il protocollo o il driver intermedio non deve chiamare la funzioneNdisCloseAdapterprima di NdisCancelSendPackets restituisce.

Non esiste alcuna garanzia che la chiamata a NdisCancelSendPackets annulla la trasmissione in sospeso di tutti i pacchetti con l'ID di annullamento specificato. Ad esempio, se il driver successivo inferiore a cui è associato il protocollo o il driver intermedio non fornisce una funzione MiniportCancelSendPackets, una chiamata a NdisCancelSendPackets non esegue alcuna operazione.

In tutti i casi, i pacchetti inviati per la trasmissione vengono restituiti al driver intermedio o al protocollo di origine tramite una chiamata alla funzioneProtocolSendComplete del driver oProtocolCoSendComplete del driver. I pacchetti di invio annullati vengono restituiti con lo stato di completamento di NDIS_STATUS_ABORTED. Il ritardo tra la chiamata NdisCancelSendPackets e la restituzione dei pacchetti annullati può variare e pertanto non può essere specificata esattamente.

  • Piattaforma di destinazione: universal
  • Versione: non supportata per i driver NDIS 6.0 in Windows Vista. Usare invece NdisCancelSendNetBufferLists. Supportato per i driver NDIS 5.1 in Windows Vista e Windows XP.

Fabbisogno

Requisito Valore
intestazione ndis.h (include Ndis.h)
libreria Ndis.lib
IRQL IRQL <= DISPATCH_LEVEL

Vedere anche