FILE_ID_EXTD_DIR_INFO結構 (winbase.h)
包含檔案的標識碼資訊。 當 FileIdExtdDirectoryInfo (0x13) 或 FileIdExtdDirectoryRestartInfo (0x14) 傳入 FileInformationClass 參數時,會從 GetFileInformationByHandleEx 函式傳回這個結構。
語法
typedef struct _FILE_ID_EXTD_DIR_INFO {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
ULONG ReparsePointTag;
FILE_ID_128 FileId;
WCHAR FileName[1];
} FILE_ID_EXTD_DIR_INFO, *PFILE_ID_EXTD_DIR_INFO;
成員
NextEntryOffset
傳回之下一 個FILE_ID_EXTD_DIR_INFO 結構的位移。 如果這個專案後面沒有其他專案,則包含零 (0) 。
FileIndex
父目錄中檔案的位元組位移。 此成員未定義給文件系統,例如NTFS,其中檔案在父目錄中的位置未固定,而且可以隨時變更以維護排序順序。
CreationTime
建立檔案的時間。
LastAccessTime
上次存取檔案的時間。
LastWriteTime
上次寫入檔案的時間。
ChangeTime
上次變更檔案的時間。
EndOfFile
從檔案開頭到檔案結尾的絕對新檔尾位置做為位移。 因為此值是以零起始,所以實際上會參考檔案中的第一個可用位元組。 換句話說, EndOfFile 是緊接在檔案中最後一個有效位元組之後的位元組位移。
AllocationSize
為檔案配置的位元元組數目。 此值通常是基礎實體裝置的扇區或叢集大小的倍數。
FileAttributes
檔案屬性。 此成員可以是下列屬性的任何有效組合:
值 | 意義 |
---|---|
|
封存盤案或目錄的檔案或目錄。 應用程式通常會使用這個屬性來標記要備份或移除的檔案。 |
|
壓縮的檔案或目錄。 對於檔案,檔案中的所有數據都會壓縮。 針對目錄,壓縮是新建立檔案和子目錄的預設值。 |
|
此值保留給系統使用。 |
|
識別目錄的句柄。 |
|
加密的檔案或目錄。 對於檔案,檔案中的所有數據流都會加密。 對於目錄,加密是新建立的檔案和子目錄的預設值。 |
|
檔案或目錄已隱藏。 它不包含在一般目錄清單中。 |
|
未設定其他屬性的檔案。 此屬性只有在單獨使用時才有效。 |
|
檔案或目錄不會由內容索引服務編製索引。 |
|
檔案的數據無法立即使用。 這個屬性表示檔案數據實際上會移至離線記憶體。 遠端記憶體會使用此屬性,這是階層式記憶體管理軟體。 應用程式不應該任意變更此屬性。 |
|
唯讀的檔案。 應用程式可以讀取檔案,但無法寫入或刪除檔案。 目錄上不接受這個屬性。 如需詳細資訊,請參閱 您無法在 Windows Server 2003、Windows XP、Windows Vista 或 Windows 7 中檢視或變更資料夾的唯讀或系統屬性。 |
|
具有相關聯重新分析點的檔案或目錄,或是符號連結的檔案。 |
|
屬於疏鬆檔案的檔案。 |
|
操作系統使用的一部分或獨佔使用的檔案或目錄。 |
|
用於暫存盤的檔案。 如果有足夠的快取記憶體可用,檔案系統可避免將數據寫回大量記憶體,因為應用程式通常會在關閉句柄之後刪除臨時檔。 在該案例中,系統完全可以避免寫入數據。 否則,會在關閉句柄之後寫入數據。 |
|
此值保留給系統使用。 |
FileNameLength
檔名的長度。
EaSize
檔案的擴充屬性大小。
ReparsePointTag
如果 FileAttributes 成員包含 FILE_ATTRIBUTE_REPARSE_POINT 屬性,此成員會指定重新分析點標記。
否則,這個值是未定義的,不應使用。
如需詳細資訊,請參閱 重新分析點標記。
IO_REPARSE_TAG_CSV (0x80000009)
IO_REPARSE_TAG_DEDUP (0x80000013)
IO_REPARSE_TAG_DFS (0x8000000A)
IO_REPARSE_TAG_DFSR (0x80000012)
IO_REPARSE_TAG_HSM (0xC0000004)
IO_REPARSE_TAG_HSM2 (0x80000006)
IO_REPARSE_TAG_MOUNT_POINT (0xA0000003)
IO_REPARSE_TAG_NFS (0x80000014)
IO_REPARSE_TAG_SIS (0x80000007)
IO_REPARSE_TAG_SYMLINK (0xA000000C)
IO_REPARSE_TAG_WIM (0x80000008)
FileId
檔案標識碼。
FileName[1]
檔名字串的第一個字元。 這會接著在記憶體中加上字串的其餘部分。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 都不支援 |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
標頭 | winbase.h (包含 Windows.h) |