ExGetPreviousMode 函式 (wdm.h)
ExGetPreviousMode 例程會傳回目前線程的先前處理器模式。
KPROCESSOR_MODE ExGetPreviousMode();
ExGetPreviousMode 會傳回 KPROCESSOR_MODE 值,其中一個 KernelMode 或 UserMode。 這個值會指定目前線程的上一個處理器模式。
如果 I/O 要求可以源自使用者模式或核心模式,而且呼叫端會將指標傳遞給用於 I/O 的數據結構,驅動程式必須能夠判斷呼叫端的指標在使用者模式或核心模式中是否有效。
如果驅動程式使用一般 IRP 型 I/O 分派方法來處理 I/O 要求,則可以檢查 IRP 標頭中的 RequestorMode 參數來判斷先前的處理器模式。 (RequestorMode 參數是由 I/O manager.)
或者, ExGetPreviousMode 可用來判斷先前的處理器模式。 例如,在使用快速 I/O 的檔案驅動程式中,先前的模式參數無法使用的情況下,此例程特別有用。
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平台 | Universal |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |