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 值,讓架構建立檔案物件。
- 另一個驅動程式傳送讀取、寫入或 I/O 控件要求給驅動程式,而不需要先傳送 WdfRequestTypeCreate的要求類型。
例子
下列程式代碼範例會取得 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 |
標頭 | wdfrequest.h (包括 Wdf.h) |
連結庫 | Wdf01000.sys (KMDF):WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate(kmdf),FileObjectConfigured(kmdf),InvalidReqAccess(kmdf),InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |