Funzione KeRemoveDeviceQueue (wdm.h)
La routine KeRemoveDeviceQueue rimuove una voce dall'inizio di una coda del dispositivo specificata.
Sintassi
PKDEVICE_QUEUE_ENTRY KeRemoveDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue
);
Parametri
[in, out] DeviceQueue
Puntatore a un oggetto coda di dispositivi inizializzato per il quale il chiamante fornisce l'archiviazione.
Valore restituito
Se la coda del dispositivo è vuota ma è impostata su uno stato occupato, KeRemoveDeviceQueue restituisce NULL.
Osservazioni
Il blocco di selezione della coda del dispositivo specificato viene acquisito e lo stato della coda del dispositivo viene controllato. Se la coda del dispositivo è impostata su uno stato occupato e viene accodato un IRP, questa routine rimuove la coda e restituisce un puntatore all'IRP. Una chiamata a KeRemoveDeviceQueue quando l'oggetto coda del dispositivo è impostato su uno stato occupato, ma non viene accodato alcun runtime di integrazione causa una modifica dello stato a non occupato. Il blocco spin della coda del dispositivo specificato viene rilasciato.
È un errore chiamare KeRemoveDeviceQueue quando l'oggetto coda del dispositivo è impostato su uno stato non occupato.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows 2000. |
piattaforma di destinazione | Universale |
intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
regole di conformità DDI | HwStorPortProhibitedDDDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |