KeRemoveByKeyDeviceQueue-Funktion (wdm.h)
Die KeRemoveByKeyDeviceQueue-Routine entfernt einen Eintrag, der gemäß einem Sortierschlüsselwert ausgewählt ist, aus der angegebenen Gerätewarteschlange.
Syntax
PKDEVICE_QUEUE_ENTRY KeRemoveByKeyDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue,
[in] ULONG SortKey
);
Parameter
[in, out] DeviceQueue
Zeiger auf ein initialisiertes Gerätewarteschlangenobjekt, für das der Aufrufer den Speicher bereitstellt.
[in] SortKey
Gibt den Schlüssel an, der beim Durchsuchen von DeviceQueue verwendet werden soll.
Rückgabewert
KeRemoveByKeyDeviceQueue gibt den entfernten Gerätewarteschlangeneintrag zurück. gibt NULL zurück, wenn die Warteschlange leer war.
Hinweise
Diese Routine sucht nach dem ersten Eintrag in der Gerätewarteschlange, der einen Wert größer oder gleich dem SortKey hat. Nachdem dieser Eintrag gefunden wurde, entfernt diese Routine den Eintrag aus der Gerätewarteschlange und gibt ihn zurück. Wenn kein solcher Eintrag gefunden wird, wird der erste Eintrag in der Warteschlange zurückgegeben. Wenn die Gerätewarteschlange leer ist, wird das Gerät auf den Nicht-Gebucht-Zustand festgelegt, und ein NULL-Zeiger wird zurückgegeben.
Es ist ein Fehler, KeRemoveByKeyDeviceQueue aufzurufen, wenn das Gerätewarteschlangenobjekt auf den Status "Nicht gebucht" festgelegt ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Universell |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |