estrutura FILE_STAT_BASIC_INFORMATION (ntifs.h)
FILE_STAT_BASIC_INFORMATION contém metadados básicos sobre um arquivo.
Sintaxe
typedef struct _FILE_STAT_BASIC_INFORMATION {
LARGE_INTEGER FileId;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER AllocationSize;
LARGE_INTEGER EndOfFile;
ULONG FileAttributes;
ULONG ReparseTag;
ULONG NumberOfLinks;
ULONG DeviceType;
ULONG DeviceCharacteristics;
ULONG Reserved;
LARGE_INTEGER VolumeSerialNumber;
FILE_ID_128 FileId128;
} FILE_STAT_BASIC_INFORMATION, *PFILE_STAT_BASIC_INFORMATION;
Membros
FileId
Especifica a ID de um arquivo.
CreationTime
Especifica a hora de criação de um arquivo.
LastAccessTime
Especifica a última vez que um arquivo foi acessado.
LastWriteTime
Especifica a última vez em que um arquivo foi gravado.
ChangeTime
Especifica a última vez que um arquivo foi alterado.
AllocationSize
Tamanho da alocação de arquivo, em bytes. Normalmente, esse valor é um múltiplo do tamanho do setor ou do cluster do dispositivo físico subjacente.
EndOfFile
Nova posição absoluta de fim de arquivo como um deslocamento de bytes do início do arquivo. EndOfFile especifica o deslocamento de bytes até o final do arquivo. Como esse valor é baseado em zero, ele realmente se refere ao primeiro byte gratuito no arquivo. Em outras palavras, EndOfFile é o deslocamento para o byte imediatamente após o último byte válido no arquivo.
FileAttributes
Atributos de arquivo, que podem ser qualquer combinação válida do seguinte:
Atributo | Valor |
---|---|
FILE_ATTRIBUTE_READONLY | 0x00000001 |
FILE_ATTRIBUTE_HIDDEN | 0x00000002 |
FILE_ATTRIBUTE_SYSTEM | 0x00000004 |
FILE_ATTRIBUTE_DIRECTORY | 0x00000010 |
FILE_ATTRIBUTE_ARCHIVE | 0x00000020 |
FILE_ATTRIBUTE_NORMAL | 0x00000080 |
ReparseTag
Marca de ponto de nova análise. Consulte Sobre pontos de nova análise para obter mais informações.
NumberOfLinks
Especifica o número de links para o arquivo.
DeviceType
Definido quando um driver chama IoCreateDevice conforme apropriado para o tipo de dispositivo subjacente. Para obter mais informações, consulte Especificando tipos de dispositivo.
DeviceCharacteristics
As características do dispositivo. Para obter uma descrição dos valores relevantes, consulte DEVICE_OBJECT.
Reserved
Reservado para uso do sistema.
VolumeSerialNumber
Número de série do volume em que o arquivo está localizado.
FileId128
O número de referência do arquivo de 128 bytes para o arquivo. Esse número é gerado e atribuído ao arquivo pelo sistema de arquivos.
Comentários
Essas informações podem ser consultadas de uma das seguintes maneiras:
Chame ZwQueryDirectoryFile, passando FileStatBasicInformation como o valor de FileInformationClass e passando um buffer alocado pelo chamador FILE_ID_EXTD_DIR_INFORMATION estruturado como o valor de FileInformation.
Create um IRP com IRP_MJ_DIRECTORY_CONTROL de código de função principal e IRP_MN_QUERY_DIRECTORY de código de função secundária.
Nenhum direito de acesso específico é necessário para consultar essas informações.
Os números de referência de arquivo, também chamados de IDs de arquivo, têm a garantia de serem exclusivos somente dentro de um sistema de arquivos estático. Não há garantia de que eles sejam exclusivos ao longo do tempo, pois os sistemas de arquivos são livres para reutilizá-los. Também não há garantia de que permaneçam constantes. Por exemplo, o sistema de arquivos FAT gera o número de referência de arquivo para um arquivo do deslocamento de bytes do registro de entrada de diretório do arquivo (DIRENT) no disco. A desfragmentação pode alterar esse deslocamento de bytes. Portanto, um número de referência de arquivo FAT pode ser alterado ao longo do tempo.
Todas as datas e horas estão no formato absoluto de hora do sistema. A hora absoluta do sistema é o número de intervalos de 100 nanossegundos desde o início do ano 1601.
Essa estrutura deve ser alinhada em um limite LONGLONG (8 bytes). Se um buffer contiver duas ou mais dessas estruturas, o valor NextEntryOffset em cada entrada, exceto a última, se enquadra em um limite de 8 bytes.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 11, versão 24H2 |
Cabeçalho | ntifs.h |