WIN32_FIND_DATAW 結構 (minwinbase.h)
包含 FindFirstFile、 FindFirstFileEx 或 FindNextFile 函式找到之檔案的相關信息。
語法
typedef struct _WIN32_FIND_DATAW {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
WCHAR cFileName[MAX_PATH];
WCHAR cAlternateFileName[14];
DWORD dwFileType; // Obsolete. Do not use.
DWORD dwCreatorType; // Obsolete. Do not use
WORD wFinderFlags; // Obsolete. Do not use
} WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
成員
dwFileAttributes
檔案的檔案屬性。
如需可能的值及其描述,請參閱 檔案屬性常數。
如果檔案的任何數據流已經疏鬆,則會設定檔案上的 FILE_ATTRIBUTE_SPARSE_FILE 屬性。
ftCreationTime
FILETIME 結構,指定建立檔案或目錄的時間。
如果基礎文件系統不支援建立時間,則此成員為零。
ftLastAccessTime
FILETIME 結構。
針對檔案,結構會指定上次讀取、寫入或執行可執行檔的檔案的時間。
針對目錄,結構會指定何時建立目錄。 如果基礎文件系統不支援上次存取時間,則此成員為零。
在 FAT 檔案系統上,檔案和目錄的指定日期正確,但一天的時間一律設定為午夜。
ftLastWriteTime
FILETIME 結構。
針對檔案,結構會指定上次寫入、截斷或覆寫檔案的時間,例如,使用 WriteFile 或 SetEndOfFile 時。 檔案屬性或安全性描述項變更時,不會更新日期和時間。
針對目錄,結構會指定何時建立目錄。 如果基礎文件系統不支援上次寫入時間,則此成員為零。
nFileSizeHigh
檔案大小的高序 DWORD 值,以位元組為單位。
除非檔案大小大於 MAXDWORD,否則此值為零。
檔案的大小等於 (nFileSizeHigh * (MAXDWORD+1) ) + nFileSizeLow。
nFileSizeLow
檔案大小的低序 DWORD 值,以位元組為單位。
dwReserved0
如果 dwFileAttributes 成員包含 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)
dwReserved1
保留供未來使用。
cFileName[MAX_PATH]
檔案的名稱。
cAlternateFileName[14]
檔案的替代名稱。
此名稱是傳統 8.3 檔名格式。
備註
如果檔案具有長檔名,則完整名稱會出現在 cFileName 成員中,而名稱的 8.3 格式截斷版本會出現在 cAlternateFileName 成員中。 否則, cAlternateFileName 是空的。 如果使用 fInfoLevelId 參數中的 FindExInfoBasic 值呼叫 FindFirstFileEx 函式,cAlternateFileName 成員一律會包含 NULL 字串值。 對於 FindNextFile 函式的所有後續呼叫,這仍然成立。 作為擷取檔名 8.3 格式版本的替代方法,您可以使用 GetShortPathName 函式。 如需檔名的詳細資訊,請參閱 檔名、路徑和命名空間。
並非所有文件系統都可以記錄建立和上次存取時間,而且並非所有文件系統都以相同的方式記錄它們。 例如,在 FAT 檔系統上,建立時間的解析度為 10 毫秒、寫入時間解析度為 2 秒,而存取時間的解析度為 1 天。 NTFS 檔系統在上次存取後最多 1 小時會延遲檔案上次存取時間的更新。 如需詳細資訊,請參閱 檔案時間。
注意
minwinbase.h 標頭會將WIN32_FIND_DATA定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
標頭 | minwinbase.h (包含 Windows.h) |