FltQueryVolumeInformationFile 函式 (fltkernel.h)
FltQueryVolumeInformationFile 會擷取指定檔案、目錄、儲存裝置或磁碟區的磁碟區資訊。
語法
NTSTATUS FLTAPI FltQueryVolumeInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass,
[out, optional] PULONG LengthReturned
);
參數
[in] Instance
呼叫端的不透明實例指標。 這個參數是必要的,而且不能是 NULL。
[in] FileObject
開啟檔案、目錄、儲存裝置或磁碟區的檔案物件指標。 這個參數是必要的,而且不能是 NULL。
[out] FsInformation
接收檔案相關信息之呼叫端配置的緩衝區指標。 FsInformationClass 參數會指定信息類型。 這個參數是必要的,而且不能是 NULL。
[in] Length
FsInformation 緩衝區的大小,以位元組為單位。
[in] FsInformationClass
要傳回的磁碟區信息類型。 下列其中之一:
值 | 意義 |
---|---|
|
傳回 FILE_FS_ATTRIBUTE_INFORMATION 結構,其中包含負責磁碟區之文件系統的屬性資訊。 |
|
傳回 包含 磁碟區檔系統控制資訊的FILE_FS_CONTROL_INFORMATION結構。 |
|
傳回 包含 磁碟區裝置資訊的FILE_FS_DEVICE_INFORMATION結構。 |
|
傳回 FILE_FS_DRIVER_PATH_INFORMATION 結構,其中包含指定的驅動程式是否位於磁碟區的I/O 路徑中的相關信息。 呼叫端必須先將驅動程式的名稱儲存到 FILE_FS_DRIVER_PATH_INFORMATION 結構中,才能呼叫 FltQueryVolumeInformationFile。 |
|
傳回 FILE_FS_FULL_SIZE_INFORMATION 結構,其中包含磁碟區可用空間總數的相關信息。 |
|
傳回 包含 磁碟區檔系統特定物件標識碼資訊的FILE_FS_OBJECTID_INFORMATION結構。 請注意,這與操作系統指派的唯一磁碟區名稱 (GUID 型) 不同。 |
|
傳回 FILE_FS_SIZE_INFORMATION 結構,其中包含與呼叫線程相關聯之使用者可用磁碟區空間量的相關信息。 |
|
傳回 FILE_FS_VOLUME_INFORMATION ,其中包含磁碟區標籤、序號和建立時間等磁碟區的相關信息。 |
|
傳回 FILE_FS_SECTOR_SIZE_INFORMATION 結構,其中包含磁碟區之實體和邏輯扇區大小的相關信息。 |
[out, optional] LengthReturned
呼叫端配置的變數指標,該變數會接收 FsInformation 緩衝區中傳回之資訊的大小,以位元組為單位。 此參數是選擇性的,可以是 NULL。
傳回值
FltQueryVolumeInformationFile 會 傳回STATUS_SUCCESS 或適當的 NTSTATUS 值,如下所示:
傳回碼 | Description |
---|---|
|
磁碟區目前未掛接。 這是錯誤碼。 |
備註
FltQueryVolumeInformationFile 會擷取指定檔案、目錄、儲存裝置或磁碟區的磁碟區資訊。
如果 FileObject 代表直接開啟的裝置,則只有 FileFsDeviceInformation 可以指定為 FsInformationClass 的值。
FltQueryVolumeInformationFile 會在特定文件系統不支援的 FILE_FS_XXX_INFORMATION 結構的任何成員中傳回零。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | fltkernel.h (包含 Fltkernel.h) |
程式庫 | FltMgr.lib |
Dll | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |
另請參閱
FILE_FS_DRIVER_PATH_INFORMATION
FILE_FS_SECTOR_SIZE_INFORMATION