ExGetPreviousMode-Funktion (wdm.h)
Die ExGetPreviousMode-Routine gibt den vorherigen Prozessormodus für den aktuellen Thread zurück.
Syntax
KPROCESSOR_MODE ExGetPreviousMode();
Rückgabewert
ExGetPreviousMode gibt einen KPROCESSOR_MODE Wert zurück, einen von KernelMode oder UserMode. Dieser Wert gibt den vorherigen Prozessormodus für den aktuellen Thread an.
Hinweise
Wenn eine E/A-Anforderung entweder im Benutzermodus oder Kernelmodus erfolgen kann und der Aufrufer Zeiger an Datenstrukturen übergibt, die für E/A verwendet werden, muss der Treiber in der Lage sein zu bestimmen, ob die Zeiger des Aufrufers im Benutzer- oder Kernelmodus gültig sind.
Wenn Treiber E/A-Anforderungen mit der normalen IRP-basierten E/A-Dispatchmethode verarbeiten, können sie den vorherigen Prozessormodus bestimmen, indem sie den RequestorMode-Parameter im IRP-Header überprüfen. (Der RequestorMode-Parameter wird vom E/A-Manager festgelegt.)
Alternativ kann ExGetPreviousMode verwendet werden, um den vorherigen Prozessormodus zu bestimmen. Diese Routine ist besonders nützlich, wenn ein vorheriger Modusparameter nicht verfügbar ist, z. B. in einem Dateitreiber, der schnelle E/A verwendet.
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 |