Función KeRemoveDeviceQueue (wdm.h)

La rutina KeRemoveDeviceQueue quita una entrada del encabezado de una cola de dispositivos especificada.

Sintaxis

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

Parámetros

[in, out] DeviceQueue

Puntero a un objeto de cola de dispositivo inicializado para el que el autor de la llamada proporciona el almacenamiento.

Valor devuelto

Si la cola de dispositivos está vacía, pero está establecida en un estado ocupado, KeRemoveDeviceQueue devuelve NULL.

Comentarios

Se adquiere el bloqueo de número de cola de dispositivos especificado y se comprueba el estado de la cola de dispositivos. Si la cola de dispositivos se establece en un estado ocupado y se pone en cola un IRP, esta rutina quita la entrada y devuelve un puntero al IRP. Una llamada a KeRemoveDeviceQueue cuando el objeto de cola de dispositivos está establecido en un estado ocupado, pero ningún IRP se pone en cola provoca un cambio de estado en no ocupado. Se libera el bloqueo de número de la cola de dispositivos especificado.

Es un error llamar a KeRemoveDeviceQueue cuando el objeto de cola de dispositivos está establecido en un estado no ocupado.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL DISPATCH_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm)

Consulte también

KeInitializeDeviceQueue

KeInsertByKeyDeviceQueue

KeInsertDeviceQueue

KeRemoveByKeyDeviceQueue

KeRemoveEntryDeviceQueue