ZwSetVolumeInformationFile 函式 (ntifs.h)
ZwSetVolumeInformationFile 例程會修改與指定檔案、目錄、儲存裝置或磁碟區相關聯的磁碟區相關信息。
語法
NTSYSAPI NTSTATUS ZwSetVolumeInformationFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[in] PVOID FsInformation,
[in] ULONG Length,
[in] FS_INFORMATION_CLASS FsInformationClass
);
參數
[in] FileHandle
要修改其磁碟區資訊之開啟檔案、目錄、儲存裝置或磁碟區的檔案物件句柄。
[out] IoStatusBlock
接收最終完成狀態和作業相關信息 之IO_STATUS_BLOCK 結構的指標。
[in] FsInformation
呼叫端配置的緩衝區指標,其中包含要修改的磁碟區資訊。 此緩衝區中信息的結構取決於 FsInformationClass 的值,如下表所示。
[in] Length
以位元組為單位的緩衝區大小,由 FsInformation 指向。 呼叫端應該根據指定的 FsInformationClass 來設定此參數。
[in] FsInformationClass
要設定的磁碟區信息類型。 下列其中之一:
值 | 意義 |
---|---|
FileFsControlInformation | 設定 磁碟區的FILE_FS_CONTROL_INFORMATION 。 |
FileFsLabelInformation | 設定 磁碟區的FILE_FS_LABEL_INFORMATION 。 |
FileFsObjectIdInformation | 設定 磁碟區的FILE_FS_OBJECTID_INFORMATION 。 |
傳回值
ZwSetVolumeInformationFile 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:
傳回碼 | Description |
---|---|
|
為 Length 指定了無效的值。 這是錯誤碼。 |
|
ZwSetVolumeInformationFile 發生集區配置失敗。 這是錯誤碼。 |
|
為 FsInformationClass 指定了無效的值。 這是錯誤碼。 |
備註
若要查詢磁碟區資訊,請呼叫 ZwQueryVolumeInformationFile。
若要變更檔案的相關信息,請呼叫 ZwSetVolumeInformationFile。
Minifilters 應該使用 FltSetInformationFile ,而不是 ZwSetVolumeInformationFile。
注意 如果使用者模式中發生 ZwSetVolumeInformationFile函式的呼叫,您應該使用名稱 “NtSetInformationFile”,而不是 “ZwSetVolumeInformationFile”。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Server 2003 |
目標平台 | Universal |
標頭 | ntifs.h (包含 Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIS (storport) 、 PowerIrpDDis (wdm) |