次の方法で共有


ExGetPreviousMode 関数 (wdm.h)

ExGetPreviousMode ルーチンは、現在のスレッドの前のプロセッサ モードを返します。

構文

KPROCESSOR_MODE ExGetPreviousMode();

戻り値

ExGetPreviousMode は、KernelMode または UserMode のいずれかのKPROCESSOR_MODE値を返します。 この値は、現在のスレッドの以前のプロセッサ モードを指定します。

注釈

I/O 要求がユーザー モードまたはカーネル モードで発生し、呼び出し元が I/O に使用されるデータ構造へのポインターを渡す場合、ドライバーは呼び出し元のポインターがユーザー モードまたはカーネル モードで有効かどうかを判断できる必要があります。

ドライバーが通常の IRP ベースの I/O ディスパッチ メソッドを使用して I/O 要求を処理している場合は、IRP ヘッダーの RequestorMode パラメーターをチェックすることで、以前のプロセッサ モードを決定できます。 ( RequestorMode パラメーターは I/O マネージャーによって設定されます)。

または、 ExGetPreviousMode を 使用して、前のプロセッサ モードを決定することもできます。 このルーチンは、高速 I/O を使用するファイル ドライバーなど、前のモード パラメーターが使用できない場合に特に便利です。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

こちらもご覧ください

KeGetCurrentThread