Compartilhar via


Função IoStartNextPacketByKey (wdm.h)

A rotina IoStartNextPacketByKey desativa o próximo pacote de solicitação de E/S da fila de dispositivos associada do objeto de dispositivo especificado de acordo com um valor de chave de classificação especificado e chama a rotina StartIo do driver com esse IRP.

Sintaxe

void IoStartNextPacketByKey(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] BOOLEAN        Cancelable,
  [in] ULONG          Key
);

Parâmetros

[in] DeviceObject

Ponteiro para o objeto do dispositivo para o qual o IRP deve ser desemqueado.

[in] Cancelable

Especifica se os IRPs na fila do dispositivo podem ser cancelados.

[in] Key

Especifica a chave de classificação que determina qual entrada remover da fila.

Retornar valor

Nenhum

Comentários

Se não houver NENHUM IRPs atualmente na fila do dispositivo para o objeto de dispositivo de destino, essa rotina simplesmente retornará o controle para o chamador.

Se o driver passou um ponteiro para uma rotina de cancelamento quando chamou IoStartPacket, ele deverá passar TRUE no parâmetro Cancelable . Se Cancelable for TRUE, o gerenciador de E/S usará o bloqueio de rotação de cancelamento para proteger a fila do dispositivo e o IRP atual.

Os drivers que não têm uma rotina StartIo não podem chamar IoStartNextPacketByKey.

Os chamadores de IoStartNextPacketByKey devem estar em execução em IRQL <= DISPATCH_LEVEL. Normalmente, essa rotina é chamada da rotina DpcForIsr ou CustomDpc de um driver de dispositivo, ambos executados em IRQL = DISPATCH_LEVEL.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 2000.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Confira também

DEVICE_OBJECT

IoStartNextPacket

IoStartPacket