WdfRequestIsFrom32BitProcess 関数 (wdfrequest.h)
[KMDF と UMDF に適用]
WdfRequestIsFrom32BitProcess メソッドは、指定された I/O 要求の発信元が 32 ビット ユーザー モード アプリケーションであるかどうかをチェックします。
構文
BOOLEAN WdfRequestIsFrom32BitProcess(
[in] WDFREQUEST Request
);
パラメーター
[in] Request
フレームワーク要求オブジェクトへのハンドル。
戻り値
64 ビット システムでは、WdfRequestIsFrom32BitProcess は、現在 の I/O 要求の発信元が 32 ビット ユーザー モード プロセスの場合は TRUE を返し、それ以外の場合は FALSE 。 32 ビット システムでは、WdfRequestIsFrom32BitProcess は常に TRUE 返します。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
備考
ドライバーは、WdfRequestIsFrom32BitProcess を呼び出して、64 ビット ドライバーで使用する前に、I/O 要求に変換する必要があるデータ要素が含まれている可能性があるか、"サンク" を含んでいる可能性があるかを判断できます。
指定した要求ハンドルは、WdfRequestCreateへの呼び出しからではなく、ドライバーの I/O キューのいずれかから取得されている必要があります。
例
次のコード例では、I/O 要求が 32 ビット アプリケーションから送信されたかどうかを判断します。
VOID
MyEvtIoRead(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t Length
)
{
...
if (WdfRequestIsFrom32BitProcess(Request)) {
//
// The driver is running on a 64-bit computer and the
// I/O request came from a 32-bit application.
//
...
}
...
}
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 万国 |
最小 KMDF バージョン | 1.0 |
UMDF の最小バージョン を する | 2.0 |
ヘッダー | wdfrequest.h (Wdf.h を含む) |
ライブラリ | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |