WdfRequestGetFileObject 関数 (wdfrequest.h)
[KMDF と UMDF に適用]
WdfRequestGetFileObject メソッドは、指定された I/O 要求に関連付けられているフレームワーク ファイル オブジェクトを取得します。
構文
WDFFILEOBJECT WdfRequestGetFileObject(
[in] WDFREQUEST Request
);
パラメーター
[in] Request
フレームワーク要求オブジェクトへのハンドル。
戻り値
フレームワークが指定された要求のファイル オブジェクトを作成した場合、WdfRequestGetFileObject はフレームワーク ファイル オブジェクトへのハンドルを返します。 それ以外の場合、このメソッドは NULL を返します。 (ドライバーは通常、WDF_FILEOBJECT_CONFIG構造体でWdfFileObjectCanBeOptional ビット フラグを設定する場合にのみ NULL 戻り値をテストします。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
注釈
WdfRequestGetFileObject メソッドは、次のいずれかの場合に NULL を返します。
- ドライバーで WdfDeviceInitSetFileObjectConfig が呼び出されておらず、フレームワークでファイル オブジェクトを作成する WDF_FILEOBJECT_CLASS 値が指定されています。
- 別のドライバーは、最初に WdfRequestTypeCreate の要求の種類を送信せずに、読み取り、書き込み、または I/O コントロール要求をドライバーに送信しました。
例
次のコード例では、I/O 要求のファイル オブジェクトを取得し、ファイル オブジェクトのコンテキスト空間へのポインターを取得するドライバー定義ルーチンを呼び出します。
VOID
MyEvtIoWrite(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t Length
)
{
WDFFILEOBJECT fileObject;
PFILE_OPEN_CONTEXT pOpenContext;
fileObject = WdfRequestGetFileObject(Request);
pOpenContext = GetFileObjectContext(fileObject)->OpenContext;
}
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfrequest.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI コンプライアンス規則 | DriverCreate(kmdf)、 FileObjectConfigured(kmdf)、 InvalidReqAccess(kmdf)、 InvalidReqAccessLocal(kmdf)、 KmdfIrql(kmdf)、 KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf) |