FltQueryInformationFile 函式 (fltkernel.h)
FltQueryInformationFile 會擷取指定檔案的資訊。
語法
NTSTATUS FLTAPI FltQueryInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass,
[out, optional] PULONG LengthReturned
);
參數
[in] Instance
呼叫端的不透明實例指標。 這個參數是必要的,而且不能是 NULL。
[in] FileObject
檔案的檔案對象指標。 這個參數是必要的,而且不能是 NULL。
[out] FileInformation
接收檔案相關信息之呼叫端配置的緩衝區指標。 FileInformationClass 參數會指定信息類型。 這個參數是必要的,而且不能是 NULL。
[in] Length
FileInformation 緩衝區的大小,以位元組為單位。
[in] FileInformationClass
FILE_INFORMATION_CLASS值,指定要在 FileInformation 緩衝區中傳回的文件類型。
[out, optional] LengthReturned
呼叫端配置的變數指標,該變數會接收 FileInformation 緩衝區中傳回之資訊的大小,以位元組為單位。 此參數是選擇性的,可以是 NULL。
傳回值
FltQueryInformationFile 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,如下所示:
傳回碼 | Description |
---|---|
|
檔案位於目前未掛接的磁碟區上。 這是錯誤碼。 |
備註
迷你篩選驅動程式會呼叫 FltQueryInformationFile ,以擷取 FileObject 所識別之檔案的資訊。 檔案目前必須開啟。
FltQueryInformationFile 會在特定文件系統不支援的 FILE_XXX_INFORMATION 結構的任何成員中傳回零。
FltQueryInformationFile 的呼叫端必須在 IRQL = PASSIVE_LEVEL且已啟用 APC 時執行。
注意: 請勿使用非 NULL 最上層 IRP 值呼叫此例程,因為這可能會導致系統死結。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | fltkernel.h (包含 Fltkernel.h) |
程式庫 | FltMgr.lib |
Dll | Fltmgr.sys |
IRQL | PASSIVE_LEVEL (请参阅一节) |