FILE_FS_OBJECTID_INFORMATION結構 (ntddk.h)
FILE_FS_OBJECTID_INFORMATION結構是用來查詢或設定檔系統磁碟區的物件標識碼。
語法
typedef struct _FILE_FS_OBJECTID_INFORMATION {
UCHAR ObjectId[16];
UCHAR ExtendedInfo[48];
} FILE_FS_OBJECTID_INFORMATION, *PFILE_FS_OBJECTID_INFORMATION;
成員
ObjectId[16]
識別磁碟上文件系統磁碟區的16位元組 GUID。
ExtendedInfo[48]
48 位元組值,其中包含文件系統磁碟區上選擇性的其他呼叫端定義資訊。 此擴充信息的意義不透明於文件系統。
備註
您可以使用下列任一種方式來查詢此資訊:
- 呼叫 FltQueryVolumeInformation 或 ZwQueryVolumeInformationFile,傳遞 FileFsObjectIdInformation 做為 FileInformationClass 的值,並傳遞呼叫端配置的FILE_FS_OBJECTID_INFORMATION結構化緩衝區作為 FileInformation 的值。
- 使用主要函式程式代碼建立 IRP IRP_MJ_QUERY_VOLUME_INFORMATION。
查詢此資訊不需要任何特定的訪問許可權。 因此,只要透過磁碟區本身的開啟句柄或磁碟區上的檔案或目錄來存取磁碟區,即可取得這項資訊。
這項資訊可以透過下列其中一種方式來設定:
- 呼叫 FltSetVolumeInformation 或 ZwSetVolumeInformationFile、傳遞 FileFsObjectIdInformation 做為 FileInformationClass 的值,並傳遞呼叫端配置的已配置、FILE_FS_OBJECTID_INFORMATION結構化緩衝區作為 FileInformation 的值。
- 使用主要函式程式碼建立 IRP IRP_MJ_SET_VOLUME_INFORMATION。
FILE_WRITE_DATA必須存取磁碟區才能設定這項資訊。
磁碟區物件標識碼的支持是文件系統特定的。 在NTFS中,分散式連結追蹤服務會廣泛使用磁碟區物件標識碼。
請務必注意,磁碟區對象標識碼與磁碟區 GUID 不同。 磁碟 區物件標識碼 是由文件系統指派給文件系統磁碟區。 磁碟 區 GUID 或 唯一磁碟區名稱與檔案系統無關;它是由磁碟區掛接管理員指派給基礎儲存磁碟區。
若要取得磁碟區的磁碟區 GUID,請使用 Win32 GetVolumeNameForVolumeMountPointW 函式或 FltGetVolumeGuidName 例程。
在 FileInformation 參數中傳遞至 FltQueryVolumeInformation、FltSetVolumeInformation、ZwQueryVolumeInformationFile 或 ZwSetVolumeInformationFile 的緩衝區大小必須至少為 (FILE_FS_OBJECTID_INFORMATION) 大小。
此結構必須對齊 LONGLONG (8 位元組) 界限。
規格需求
需求 | 值 |
---|---|
標頭 | ntddk.h (包含 Ntddk.h、Ntifs.h、Fltkernel.h) |