Função NdisCancelSendPackets (ndis.h)
Nota NDIS 5. x foi preterido e substituído pelo NDIS 6. x. Para obter o novo desenvolvimento de driver NDIS, consulte Drivers de rede começando com o Windows Vista. Para obter informações sobre como portar o NDIS 5. x drivers para NDIS 6. x, consulte Portabilidade de drivers NDIS 5.x para NDIS 6.0.
O NdisCancelSendPackets cancela a transmissão de todos os pacotes marcados com o identificador de cancelamento especificado no driver de miniporto identificado pelo identificador de associação.
Sintaxe
void NdisCancelSendPackets(
[in] NDIS_HANDLE NdisBindingHandle,
[in] PVOID CancelId
);
Parâmetros
[in] NdisBindingHandle
Especifica o identificador retornado por NdisOpenAdapter que identifica a NIC ou o adaptador virtual ao qual o cancelamento se aplica.
[in] CancelId
Ponteiro para o identificador de cancelamento. Esse identificador especifica o pacote ou grupo de pacotes para os quais a transmissão está sendo cancelada.
Retornar valor
Nenhum
Comentários
Os protocolos de transporte mapeiam IRPs recebidos de software de nível superior para pacotes NDIS, que os protocolos enviam para drivers de nível inferior para transmissão. Se um IRP for cancelado, um protocolo de transporte poderá chamar a função NdisCancelSendPackets para cancelar a transmissão pendente do pacote NDIS correspondente.
A função NdisCancelSendPackets cancela transmissões de pacote em uma única associação. Para cancelar transmissões de pacotes em mais de uma associação, um protocolo ou driver intermediário deve chamar a função NdisCancelSendPackets uma vez para cada associação.
O protocolo ou driver intermediário deve garantir que NdisBindingHandle, que representa a associação do driver ao adaptador, permaneça válido durante a chamada para NdisCancelSendPackets. Ou seja, o protocolo ou driver intermediário não deve chamar a função NdisCloseAdapter para fechar a associação antes que NdisCancelSendPackets retorne.
Não há garantia de que chamar NdisCancelSendPackets cancelará a transmissão pendente de todos os pacotes com a ID de cancelamento especificada. Por exemplo, se o driver mais baixo ao qual o protocolo ou o driver intermediário está associado não fornecer uma função MiniportCancelSendPackets , uma chamada para NdisCancelSendPackets não fará nada.
Em todos os casos, os pacotes enviados para transmissão são retornados ao protocolo de origem ou ao driver intermediário por meio de uma chamada para a função ProtocolSendComplete ou ProtocolCoSendComplete do driver. Os pacotes de envio cancelados são retornados com uma status de conclusão de NDIS_STATUS_ABORTED. O atraso entre chamar NdisCancelSendPackets e o retorno dos pacotes cancelados pode variar e, portanto, não pode ser especificado exatamente.
- Plataforma de destino: Universal
- Versão: não há suporte para drivers NDIS 6.0 no Windows Vista. Em vez disso, use NdisCancelSendNetBufferLists. Com suporte para drivers NDIS 5.1 no Windows Vista e windows XP.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ndis.h (inclua Ndis.h) |
Biblioteca | Ndis.lib |
IRQL | IRQL <= DISPATCH_LEVEL |