次の方法で共有


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)

関連項目

WdfRequestCreate