Fonction KeRemoveDeviceQueue (wdm.h)
La routine KeRemoveDeviceQueue supprime une entrée de la tête d’une file d’attente d’appareil spécifiée.
Syntaxe
PKDEVICE_QUEUE_ENTRY KeRemoveDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue
);
Paramètres
[in, out] DeviceQueue
Pointeur vers un objet de file d’attente d’appareil initialisé pour lequel l’appelant fournit le stockage.
Valeur retournée
Si la file d’attente de l’appareil est vide, mais qu’elle est définie sur un état occupé, KeRemoveDeviceQueue retourne NULL.
Remarques
Le verrou de rotation de file d’attente d’appareil spécifié est acquis et l’état de la file d’attente de l’appareil est vérifié. Si la file d’attente d’appareils est définie sur un état occupé et qu’un IRP est mis en file d’attente, cette routine supprime l’entrée et retourne un pointeur vers l’IRP. Un appel à KeRemoveDeviceQueue lorsque l’objet file d’attente d’appareil est défini sur un état occupé, mais qu’aucun IRP n’est mis en file d’attente entraîne un changement d’état sur non occupé. Le verrou de rotation de la file d’attente d’appareil spécifié est libéré.
Il s’agit d’une erreur d’appeler KeRemoveDeviceQueue lorsque l’objet file d’attente d’appareil est défini sur un état non occupé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),IrqlDispatch(storport),IrqlDispatch(storport), IrqlDispatch(wdm) |