Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure describes a file found by the FindFirstFile, the FindFirstFileExor the FindNextFilefunction.

Syntax

typedef struct _WIN32_FIND_DATA { 
  DWORD 
dwFileAttributes; 
  FILETIME 
ftCreationTime; 
  FILETIME 
ftLastAccessTime; 
  FILETIME 
ftLastWriteTime; 
  DWORD 
nFileSizeHigh; 
  DWORD 
nFileSizeLow; 
  DWORD 
dwOID; 
  TCHAR 
cFileName[MAX_PATH]; 
} WIN32_FIND_DATA; 

Members

dwFileAttributes

File attributes of the file found. The following table shows possible values. This member can be set to any combination of these values.

Value Description

FILE_ATTRIBUTE_ARCHIVE

Indicates that the file or directory is an archive file or directory. Applications use this attribute to mark files for backup or removal.

FILE_ATTRIBUTE_COMPRESSED

Indicates that the file or directory is compressed. For a file, this means that all data in the file is compressed. For a directory, this means that compression is the default for newly created files and subdirectories.

FILE_ATTRIBUTE_DIRECTORY

Indicates that the handle identifies a directory.

FILE_ATTRIBUTE_ENCRYPTED

Indicates that the file or directory is encrypted. For a file, this means that all data streams are encrypted. For a directory, this means that encryption is the default for newly created files and subdirectories.

FILE_ATTRIBUTE_HIDDEN

Indicates that the file or directory is hidden. It is not included in an ordinary directory listing.

FILE_ATTRIBUTE_INROM

Indicates that this file is an operating system file stored in ROM. These files are read-only. They cannot be modified.

FILE_ATTRIBUTE_NORMAL

Indicates that the file or directory has no other attributes set. This attribute is valid only if used alone.

FILE_ATTRIBUTE_READONLY

Indicates that the file or directory is read-only. Applications can read the file but cannot write to it or delete it. In the case of a directory, applications cannot delete it.

FILE_ATTRIBUTE_REPARSE_POINT

Indicates that the file has an associated reparse point.

FILE_ATTRIBUTE_ROMMODULE

Indicates that this file is an operating system file stored in ROM and executed directly from ROM, rather than being first copied to RAM. The CreateFilefunction cannot be used to access this file. Use the LoadLibraryand the CreateProcessfunctions instead.

FILE_ATTRIBUTE_ROMSTATICREF

Indicates that the file is a DLL module that has an implicit reference from at least one other file that is in the modules section of the image. A file with this attribute cannot replace the functionality of the DLL with a RAM copy of the same DLL. A file with this attribute must also have the FILE_ATTRIBUTE_INROM and the FILE_ATTRIBUTE_ROMMODULE attributes.

FILE_ATTRIBUTE_SPARSE_FILE

Indicates that the file is a sparse file.

FILE_ATTRIBUTE_SYSTEM

Indicates that the file or directory is part of the OS or is used exclusively by the OS.

FILE_ATTRIBUTE_TEMPORARY

Indicates that the file is being used for temporary storage. File systems attempt to keep all of the data in memory for quicker access, rather than flushing it back to mass storage. A temporary file should be deleted by the application as soon as it is no longer needed.

ftCreationTime

FILETIMEstructure containing the time at which the file was created. The FindFirstFileand the FindNextFilefunctions report file times in Coordinated Universal Time (UTC) format. These functions set the FILETIMEmembers to zero if the file system containing the file does not support this time member. You can use the FileTimeToLocalFileTimefunction to convert from UTC to local time, and then use the FileTimeToSystemTimefunction to convert the local time to a SYSTEMTIMEstructure containing individual members for the month, day, year, weekday, hour, minute, second, and millisecond.

ftLastAccessTime

FILETIMEstructure containing the time at which the file was last accessed. The time is in UTC format; the FILETIMEmembers are set to zero if the file system does not support this member.

ftLastWriteTime

FILETIMEstructure containing the time that the file was last written to. The time is in UTC format; the FILETIMEmembers are set to zero if the file system does not support this member.

nFileSizeHigh

High-order DWORDvalue of the file size, in bytes. This member is set to zero unless the file size is greater than MAXDWORD. The size of the file is equal to (nFileSizeHigh * MAXDWORD+1) + nFileSizeLow.

nFileSizeLow

Low-order DWORDvalue of the file size, in bytes.

dwOID

Object identifier (OID) of the file.

cFileName

Null-terminated string that is the name of the file.

Remarks

Not all file systems can record creation and last access time, and not all file systems record them in the same manner. For example, the object store (RAM) file system maintains only the last modified time.

If a file has a long name, the complete name appears in the cFileNamemember.

Requirements

Header winbase.h
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also