Partager via


Fonction KeRemoveByKeyDeviceQueue (wdm.h)

La routine KeRemoveByKeyDeviceQueue supprime une entrée, sélectionnée en fonction d’une valeur de clé de tri, de la file d’attente d’appareil spécifiée.

Syntaxe

PKDEVICE_QUEUE_ENTRY KeRemoveByKeyDeviceQueue(
  [in, out] PKDEVICE_QUEUE DeviceQueue,
  [in]      ULONG          SortKey
);

Paramètres

[in, out] DeviceQueue

Pointeur vers un objet de file d’attente d’appareil initialisé pour lequel l’appelant fournit le stockage.

[in] SortKey

Spécifie la clé à utiliser lors de la recherche dans DeviceQueue.

Valeur retournée

KeRemoveByKeyDeviceQueue retourne l’entrée de file d’attente de l’appareil qui a été supprimée ; retourne la valeur NULL si la file d’attente était vide.

Remarques

Cette routine recherche la première entrée de la file d’attente d’appareils dont la valeur est supérieure ou égale à sortKey. Une fois cette entrée trouvée, cette routine supprime l’entrée de la file d’attente de l’appareil et la retourne. Si aucune entrée de ce type n’est trouvée, la première entrée de la file d’attente est retournée. Si la file d’attente de l’appareil est vide, l’appareil est défini sur un état non occupé et un pointeur NULL est retourné.

Il s’agit d’une erreur d’appeler KeRemoveByKeyDeviceQueue 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)

Voir aussi

KeInitializeDeviceQueue

KeInsertByKeyDeviceQueue

KeInsertDeviceQueue

KeRemoveDeviceQueue

KeRemoveEntryDeviceQueue