estructura FILE_ID_64_EXTD_BOTH_DIR_INFORMATION (ntifs.h)
La estructura de FILE_ID_64_EXTD_BOTH_DIR_INFORMATION se usa para consultar la información del número de referencia de archivo de 64 bits para los archivos de un directorio.
Sintaxis
typedef struct _FILE_ID_64_EXTD_BOTH_DIR_INFORMATION {
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;
LARGE_INTEGER FileId;
CCHAR ShortNameLength;
WCHAR ShortName[12];
WCHAR FileName[1];
} FILE_ID_64_EXTD_BOTH_DIR_INFORMATION, *PFILE_ID_64_EXTD_BOTH_DIR_INFORMATION;
Miembros
NextEntryOffset
Desplazamiento de bytes de la siguiente entrada FILE_ID_64_EXTD_BOTH_DIR_INFORMATION , si hay varias entradas en un búfer. Este miembro es cero 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 a la que se creó el archivo.
LastAccessTime
Última vez que se obtuvo acceso al archivo.
LastWriteTime
La última vez que se escribió información en el archivo.
ChangeTime
Última vez que se cambió el archivo.
EndOfFile
Posición absoluta del final del archivo como desplazamiento de bytes desde el inicio del archivo. EndOfFile especifica el desplazamiento de bytes al 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 inmediatamente después del último byte válido del archivo.
AllocationSize
Tamaño de asignación de archivos, en bytes. Normalmente, este valor es un múltiplo del tamaño del sector o clúster del dispositivo físico subyacente.
FileAttributes
Atributos de archivo, que pueden ser cualquier combinación válida de lo siguiente:
- FILE_ATTRIBUTE_READONLY
- FILE_ATTRIBUTE_HIDDEN
- FILE_ATTRIBUTE_SYSTEM
- FILE_ATTRIBUTE_DIRECTORY
- FILE_ATTRIBUTE_ARCHIVE
- FILE_ATTRIBUTE_NORMAL
- FILE_ATTRIBUTE_TEMPORARY
- FILE_ATTRIBUTE_COMPRESSED
FileNameLength
Especifica la longitud de la cadena de nombre de archivo.
EaSize
Longitud combinada, en bytes, de los atributos extendidos (EA) del archivo.
ReparsePointTag
Valor de etiqueta para el punto de reanálisis.
FileId
Número de referencia de archivo de 64 bits para el archivo. El sistema de archivos genera y asigna este número al archivo.
ShortNameLength
Especifica la longitud de la cadena de nombre de archivo corta.
ShortName[12]
Cadena Unicode que contiene el nombre corto (8.3) del archivo.
FileName[1]
Especifica el primer carácter de la cadena de nombre de archivo. Esto va seguido en memoria por el resto de la cadena.
Comentarios
Esta información se puede consultar de cualquiera de las maneras siguientes:
Llame a ZwQueryDirectoryFile, pasando FileId64ExtdBothDirectoryInformation como valor de FileInformationClass y pasando un búfer asignado por el autor de la llamada FILE_ID_64_EXTD_BOTH_DIR_INFORMATION como valor de FileInformation.
Cree un IRP con el código de función principal IRP_MJ_DIRECTORY_CONTROL y el código de función secundaria IRP_MN_QUERY_DIRECTORY.
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 debe alinearse en un límite de LONGLONG (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 11, versión 23H2 |
Encabezado | ntifs.h |