KeInsertDeviceQueue, fonction (wdm.h)
La routine KeInsertDeviceQueue acquiert le verrou de rotation pour l’objet file d’attente d’appareil spécifié et, si la file d’attente de l’appareil est définie sur un état occupé, met en file d’attente l’entrée spécifiée.
Syntaxe
BOOLEAN KeInsertDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue,
[in, out] PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
);
Paramètres
[in, out] DeviceQueue
Pointeur vers un objet de contrôle de type file d’attente d’appareil pour lequel l’appelant fournit le stockage.
[in, out] DeviceQueueEntry
Pointeur vers l’entrée de file d’attente d’appareil à insérer.
Valeur retournée
Si la file d’attente de l’appareil est vide, FALSE est retourné et le DeviceQueueEntry n’est pas inséré dans la file d’attente de l’appareil.
Remarques
Si la file d’attente de l’appareil est définie sur un état occupé, le deviceQueueEntry spécifié est inséré à la fin de la file d’attente de l’appareil et le verrou de rotation de file d’attente de l’appareil est libéré.
Si KeInsertDeviceQueue retourne FALSE, l’entrée n’était pas mise en file d’attente et l’appelant doit commencer à traiter l’IRP. Un appel à KeInsertDeviceQueue ou KeInsertByKeyDeviceQueue lorsque la file d’attente est vide entraîne le passage de la file d’attente de l’appareil d’un état non occupé à un état occupé.
Cette routine concerne le code qui met en file d’attente une demande d’E/S vers un pilote de périphérique.
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), MarkingQueuedIrps(wdm) |