winbase.h

Estructura WIN32_FIND_DATA

Definición

La estructura WIN32_FIND_DATA describe un fichero encontrado por la función FindFirstFile, FindFirstFileEx o FindNextFile.

typedef struct _WIN32_FIND_DATA { // wfd  
    DWORD dwFileAttributes; 
    FILETIME ftCreationTime; 
    FILETIME ftLastAccessTime; 
    FILETIME ftLastWriteTime; 
    DWORD    nFileSizeHigh; 
    DWORD    nFileSizeLow; 
    DWORD    dwReserved0; 
    DWORD    dwReserved1; 
    TCHAR    cFileName[ MAX_PATH ]; 
    TCHAR    cAlternateFileName[ 14 ]; 
} WIN32_FIND_DATA;

Descripción

dwFileAttributes: especifica los atributos de fichero del fichero encontrado. Este miembro puede tener uno o más de los siguientes valores:

ValorSignificado
FILE_ATTRIBUTE_ARCHIVE El fichero es un archivo. Las aplicaciones usan este valor para marcar ficheros para copia de seguridad o para borrado.
FILE_ATTRIBUTE_COMPRESSED El fichero o directorio está comprimido. Para un fichero, esto significa que todos los datos del fichero están comprimidos. Para un directorio, significa que la esa compresión se hará por defecto para nuevos ficheros o subdirectorios creados.
FILE_ATTRIBUTE_DIRECTORY El fichero es un directorio.
FILE_ATTRIBUTE_HIDDEN El fichero es oculto. Este fichero no se incluye en un listado de directorio normal.
FILE_ATTRIBUTE_NORMAL El fichero no tiene otros atributos activos. Este valor sólo es válido si se usa sólo.
FILE_ATTRIBUTE_OFFLINE Los datos del fichero no están disponibles de forma inmediata. Indica que los datos del fichero han sido movidos físicamente a un almacenamiento fuera de línea.
FILE_ATTRIBUTE_READONLY El fichero es sólo de lectura. Las aplicaciones pueden leer datos del fichero, pero no pueden escribirlos en él o borrarlo.
FILE_ATTRIBUTE_SYSTEM El fichero es parte del sistema operativo o es usado exclusivamente por él.
FILE_ATTRIBUTE_TEMPORARY El fichero es usado para almacenamiento temporal. Las aplicaciones pueden escribir en el fichero sólo si es absolutamente necesario. Muchos de los datos del fichero permanecen en memoria sin volcarse al disco porque el fichero será borrado en poco tiempo.

ftCreationTime: especifica una estructura FILETIME que contiene la fecha en que el fichero fue creado. FindFirstFile, FindFirstFileEx y FindNextFile indican las fechas de los ficheros en el formato de tiempo universal (UTC). Estas funciones asignan cero a los miembros de FILETIME si el sistema de ficheros que contiene al fichero no soporta este miembro de fecha. Se puede usar la función FileTimeToLocalFileTime para convertir fechas desde UTC a tiempo local, y después usar la función FileTimeToSystemTime para convertir de tiempo local a una estructura SYSTEMTIME que contenga miembros individuales para el mes, día, año, día de la semana, hora, minuto, segundo y milisegundos.

ftLastAccessTime: especifica una estructura FILETIME que contiene la fecha en que se accedió al fichero por última vez. La fecha está en formato UTC; los miembros de FILETIME serán cero si el sistema de ficheros no soporta este miembro de fecha.

ftLastWriteTime: especifica una estructura FILETIME que contiene la fecha en que se realizó la última escritura. La fecha está en formato UTC; los miembros de FILETIME serán cero si el sistema de ficheros no soporta este miembro de fecha.

nFileSizeHigh: especifica el valor DWORD de mayor peso el tamaño del fichero, en bytes. Este valor es cero a no ser que el tamaño del fichero sea mayor de MAXDWORD. El tamaño del fichero es igual a (nFileSizeHigh * MAXDWORD) + nFileSizeLow.

nFileSizeLow: especifica el valor DWORD de menor peso del tamaño del fichero, en bytes.

dwReserved0: reservado para uso futuro.

dwReserved1: reservado para uso futuro.

cFileName: una cadena terminada en cero que contiene el nombre del fichero.

cAlternateFileName: una cadena terminada en cero que contiene el nombre del fichero. Este nombre está en el formato de nombre de fichero clásico 8.3 (filename.ext).

Observaciones

Si un fichero tiene un nombre de fichero largo, el nombre completo aparece en el campo cFileName, y la versión truncada en formato 8.3 del nombre aparecerá en el campo cAlternateFileName. En otro caso, cAlternateFileName estará vacío. Como alternativa, se puede usar la función GetShortPathName para encontrar la versión en formato 8.3 de un nombre de fichero.