ZwQueryVolumeInformationFile 函式 (ntddk.h)
ZwQueryVolumeInformationFile 例程會擷取與指定檔案、目錄、儲存裝置或磁碟區相關聯的磁碟區相關信息。
語法
NTSYSAPI NTSTATUS ZwQueryVolumeInformationFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[out] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass
);
參數
[in] FileHandle
ZwCreateFile 所傳回之檔案物件的句柄, 或 ZwOpenFile 開啟的檔案、目錄、儲存裝置,或要求磁碟區資訊的磁碟區。
[out] IoStatusBlock
IO_STATUS_BLOCK 結構的指標,可接收最終完成狀態和查詢作業的相關信息。 對於傳回數據的成功呼叫,寫入至 FsInformation 緩衝區的位元組數目會傳回結構 Information 成員中。
[out] FsInformation
呼叫端配置的緩衝區指標,可接收磁碟區的相關所需資訊。 緩衝區中傳回的信息結構是由 FsInformationClass 參數所定義。
[in] Length
FsInformation所指向的緩衝區位元組大小。 呼叫端應該根據指定的 FsInformationClass來設定此參數。
[in] FsInformationClass
要傳回有關磁碟區的信息類型。 將此成員設定為下列其中一個 FS_INFORMATION_CLASS 列舉值。
價值 | 意義 |
---|---|
FileFsAttributeInformation | 傳回 FILE_FS_ATTRIBUTE_INFORMATION 結構,其中包含負責磁碟區之文件系統的屬性資訊。 |
FileFsControlInformation | 傳回包含磁碟區檔系統控制資訊的 FILE_FS_CONTROL_INFORMATION 結構。 |
FileFsDeviceInformation | 傳回包含磁碟區裝置資訊的 FILE_FS_DEVICE_INFORMATION 結構。 |
FileFsDriverPathInformation | 傳回 FILE_FS_DRIVER_PATH_INFORMATION 結構,其中包含指定驅動程式是否位於磁碟區的 I/O 路徑中的資訊。 呼叫者必須先將驅動程式的名稱儲存到 FILE_FS_DRIVER_PATH_INFORMATION 結構中,才能呼叫 ZwQueryVolumeInformationFile。 |
FileFsFullSizeInformation | 傳回 FILE_FS_FULL_SIZE_INFORMATION 結構,其中包含磁碟區上可用空間總量的相關信息。 |
FileFsObjectIdInformation | 傳回包含磁碟區檔系統特定物件標識碼資訊的 FILE_FS_OBJECTID_INFORMATION 結構。 請注意,這與操作系統指派的唯一磁碟區名稱不同。 |
FileFsSizeInformation | 傳回 FILE_FS_SIZE_INFORMATION 結構,其中包含與呼叫線程相關聯之使用者可用之磁碟區空間量的相關信息。 |
FileFsVolumeInformation | 傳回 FILE_FS_VOLUME_INFORMATION,其中包含磁碟區卷標、序號和建立時間等磁碟區的相關信息。 |
FileFsSectorSizeInformation | 傳回 FILE_FS_SECTOR_SIZE_INFORMATION 結構,其中包含磁碟區實體和邏輯扇區大小的相關信息。 |
傳回值
ZwQueryVolumeInformationFile 會傳回STATUS_SUCCESS或適當的錯誤狀態。
言論
ZwQueryVolumeInformationFile 擷取與指定檔案、目錄、儲存裝置或磁碟區相關聯的磁碟區相關信息。
如果 fileHandle
ZwQueryVolumeInformationFile 傳回文件系統不支援之 FILE_XXX_INFORMATION 結構的任何成員中的零。
如需其他檔案資訊查詢例程的相關信息,請參閱 File Objects。
Minifilters 應該使用 FltQueryVolumeInformationFile,而不是 ZwQueryVolumeInformationFile。
ZwQueryVolumeInformationFile 的呼叫者必須在 IRQL = PASSIVE_LEVEL,且 啟用特殊核心 APC。
如果在使用者模式中呼叫 ZwQueryVolumeInformationFile 函式,您應該使用名稱 “NtQueryVolumeInformationFile”,而不是 “ZwQueryVolumeInformationFile”。
對於內核模式驅動程式的呼叫,NtXxx 和 ZwXxx 版本的 Windows 原生系統服務例程,在處理和解譯輸入參數的方式上可能會有不同的行為。 如需 nt NtXxx 與 ZwXxx 例程之間關聯性的詳細資訊,請參閱 使用 Nt 和 Zw 版本的原生系統服務例程。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | ntddk.h (include Ntifs.h, Ntddk.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (請參閱一節) |
DDI 合規性規則 | HwStorPortProhibitedDIs(storport),PowerIrpDDis(wdm) |
另請參閱
FILE_FS_DRIVER_PATH_INFORMATION