estructura FILE_ID_BOTH_DIR_INFO (winbase.h)

Contiene información sobre los archivos del directorio especificado. Se usa para los identificadores de directorio. Use solo al llamar a GetFileInformationByHandleEx. El número de archivos que se devuelven para cada llamada a GetFileInformationByHandleEx depende del tamaño del búfer que se pasa a la función. Las llamadas posteriores a GetFileInformationByHandleEx en el mismo identificador reanudarán la operación de enumeración después de que se devuelva el último archivo.

Sintaxis

typedef struct _FILE_ID_BOTH_DIR_INFO {
  DWORD         NextEntryOffset;
  DWORD         FileIndex;
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER LastWriteTime;
  LARGE_INTEGER ChangeTime;
  LARGE_INTEGER EndOfFile;
  LARGE_INTEGER AllocationSize;
  DWORD         FileAttributes;
  DWORD         FileNameLength;
  DWORD         EaSize;
  CCHAR         ShortNameLength;
  WCHAR         ShortName[12];
  LARGE_INTEGER FileId;
  WCHAR         FileName[1];
} FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;

Miembros

NextEntryOffset

Desplazamiento de la siguiente estructura FILE_ID_BOTH_DIR_INFO que se devuelve. Contiene cero (0) si ninguna otra entrada sigue esta.

FileIndex

Desplazamiento de bytes del archivo dentro del directorio primario. Este miembro no está definido para los sistemas de archivos, como NTFS, en los que la posición de un archivo dentro del directorio primario no es fija y se puede cambiar en cualquier momento para mantener el criterio de ordenación.

CreationTime

Hora en que se creó el archivo.

LastAccessTime

Hora a la que se accedió por última vez al archivo.

LastWriteTime

Hora en la que se escribió por última vez el archivo.

ChangeTime

Hora en que se cambió el archivo por última vez.

EndOfFile

Posición absoluta del final del archivo como desplazamiento de bytes desde el inicio del archivo hasta el final del archivo. Dado que este valor se basa en cero, realmente hace referencia al primer byte libre del archivo. En otras palabras, EndOfFile es el desplazamiento al byte que sigue inmediatamente al último byte válido del archivo.

AllocationSize

Número de bytes asignados para el archivo. Este valor suele ser un múltiplo del tamaño del sector o clúster del dispositivo físico subyacente.

FileAttributes

Atributos de archivo. Este miembro puede ser cualquier combinación válida de los siguientes atributos:

FILE_ATTRIBUTE_ARCHIVE (0x00000020)

FILE_ATTRIBUTE_COMPRESSED (0x00000800)

FILE_ATTRIBUTE_DIRECTORY (0x00000010)

FILE_ATTRIBUTE_HIDDEN (0x00000002)

FILE_ATTRIBUTE_NORMAL (0x00000080)

FILE_ATTRIBUTE_READONLY (0x00000001)

FILE_ATTRIBUTE_SYSTEM (0x00000004)

FILE_ATTRIBUTE_TEMPORARY (0x00000100)

FileNameLength

Longitud del nombre de archivo.

EaSize

Tamaño de los atributos extendidos para el archivo.

ShortNameLength

Longitud de ShortName.

ShortName[12]

La convención corta de nomenclatura de archivos 8.3 (por ejemplo, "FILENAME.TXT") del archivo.

FileId

Identificador del archivo.

FileName[1]

Primer carácter de la cadena de nombre de archivo. Esto va seguido en memoria por el resto de la cadena.

Comentarios

No se requieren derechos de acceso específicos para consultar esta información.

Se garantiza que los números de referencia de archivo, también denominados identificadores de archivo, son únicos solo dentro de un sistema de archivos estático. No se garantiza que sean únicos a lo largo del tiempo, ya que los sistemas de archivos son libres de reutilizarlos. Tampoco se garantiza que permanezcan constantes. Por ejemplo, el sistema de archivos FAT genera el número de referencia de archivo para un archivo a partir del desplazamiento de bytes del registro de entrada de directorio (DIRENT) del archivo en el disco. La desfragmentación puede cambiar este desplazamiento de bytes. Por lo tanto, un número de referencia de archivo FAT puede cambiar con el tiempo.

Todas las fechas y horas están en formato absoluto de tiempo del sistema. La hora absoluta del sistema es el número de intervalos de 100 nanosegundos desde el inicio del año 1601.

Esta estructura FILE_ID_BOTH_DIR_INFO debe alinearse en un límite de DWORDLONG (8 bytes). Si un búfer contiene dos o más de estas estructuras, el valor NextEntryOffset de cada entrada, excepto el último, cae en un límite de 8 bytes.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Encabezado winbase.h (incluya Windows.h)
Redistribuible Windows SDK en Windows Server 2003 y Windows XP.

Consulte también

FILE_INFO_BY_HANDLE_CLASS

Constantes de atributo de archivo

GetFileInformationByHandleEx