Partilhar via


Função KeRemoveDeviceQueue (wdm.h)

A rotina de KeRemoveDeviceQueue do remove uma entrada do cabeçalho de uma fila de dispositivos especificada.

Sintaxe

PKDEVICE_QUEUE_ENTRY KeRemoveDeviceQueue(
  [in, out] PKDEVICE_QUEUE DeviceQueue
);

Parâmetros

[in, out] DeviceQueue

Ponteiro para um objeto de fila de dispositivo inicializado para o qual o chamador fornece o armazenamento.

Valor de retorno

Se a fila do dispositivo estiver vazia, mas estiver definida como um estado ocupado, KeRemoveDeviceQueue retornará NULL.

Observações

O bloqueio de rotação da fila do dispositivo especificado é adquirido e o estado da fila do dispositivo é verificado. Se a fila do dispositivo estiver definida como um estado ocupado e um IRP estiver na fila, essa rotina desativa a entrada e retorna um ponteiro para o IRP. Uma chamada para KeRemoveDeviceQueue quando o objeto de fila do dispositivo está definido como um estado ocupado, mas nenhum IRPs são enfileirados faz com que uma alteração de estado não esteja ocupada. O bloqueio de rotação da fila do dispositivo especificado é liberado.

É um erro chamar KeRemoveDeviceQueue quando o objeto de fila do dispositivo é definido como um estado não ocupado.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 2000.
da Plataforma de Destino Universal
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL DISPATCH_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm)

Consulte também

KeInitializeDeviceQueue

KeInsertByKeyDeviceQueue

KeInsertDeviceQueue

KeRemoveByKeyDeviceQueue

KeRemoveEntryDeviceQueue