estrutura FILE_NAMES_INFORMATION (ntifs.h)

Uma estrutura FILE_NAMES_INFORMATION usada para consultar informações detalhadas sobre os nomes dos arquivos em um diretório.

Sintaxe

typedef struct _FILE_NAMES_INFORMATION {
  ULONG NextEntryOffset;
  ULONG FileIndex;
  ULONG FileNameLength;
  WCHAR FileName[1];
} FILE_NAMES_INFORMATION, *PFILE_NAMES_INFORMATION;

Membros

NextEntryOffset

Deslocamento de bytes para a próxima entrada de FILE_NAMES_INFORMATION , se várias entradas estiverem presentes em um buffer. Esse membro será zero se nenhuma outra entrada seguir esta.

FileIndex

Deslocamento de bytes do arquivo dentro do diretório pai. Esse membro é indefinido para sistemas de arquivos, como o NTFS, no qual a posição de um arquivo dentro do diretório pai não é fixa e pode ser alterada a qualquer momento para manter a ordem de classificação.

FileNameLength

Comprimento da cadeia de caracteres de nome de arquivo.

FileName[1]

O primeiro caractere da cadeia de caracteres de nome de arquivo. Isso é seguido na memória pelo restante da cadeia de caracteres.

Comentários

Essas informações podem ser consultadas de uma das seguintes maneiras:

  • Chame ZwQueryDirectoryFile, passando FileNamesInformation como o valor de FileInformationClass e passando um buffer alocado pelo chamador FILE_NAMES_INFORMATION estruturado como o valor de FileInformation.

  • Crie um IRP com código de função principal IRP_MJ_DIRECTORY_CONTROL e código de função secundária IRP_MN_QUERY_DIRECTORY.

Nenhum direito de acesso específico é necessário para consultar essas informações.

Essa estrutura deve ser alinhada em um limite LONG (4 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 4 bytes.

Requisitos

Requisito Valor
Cabeçalho ntifs.h (include Ntifs.h, Fltkernel.h)

Confira também

FsRtlNotifyFullChangeDirectory

IRP_MJ_DIRECTORY_CONTROL

ZwQueryDirectoryFile