estrutura FILE_STAT_LX_INFORMATION (ntifs.h)

FILE_STAT_LX_INFORMATION contém atributos estendidos de metadados do Linux presentes no arquivo. Isso é usado e criado pelo Subsistema do Windows para Linux (WSL).

Sintaxe

typedef struct _FILE_STAT_LX_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;
  ACCESS_MASK   EffectiveAccess;
  ULONG         LxFlags;
  ULONG         LxUid;
  ULONG         LxGid;
  ULONG         LxMode;
  ULONG         LxDeviceIdMajor;
  ULONG         LxDeviceIdMinor;
} FILE_STAT_LX_INFORMATION, *PFILE_STAT_LX_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 setor ou do tamanho do cluster do dispositivo físico subjacente.

EndOfFile

Posição absoluta de fim do arquivo como um deslocamento de bytes desde o início do arquivo. EndOfFile especifica o deslocamento de bytes para 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

Reparse a marca de ponto. Consulte Sobre pontos de nova análise para obter mais informações.

NumberOfLinks

Especifica o número de links para o arquivo.

EffectiveAccess

Especifica os direitos de acesso do arquivo.

LxFlags

Os sinalizadores associados a FILE_STAT_LX_INFORMATION que especificam quais campos de metadados estavam presentes no arquivo.

Sinalizador Valor
LX_FILE_METADATA_HAS_UID x1
LX_FILE_METADATA_HAS_GID x2
LX_FILE_METADATA_HAS_MODE x4
LX_FILE_METADATA_HAS_DEVICE_ID x8
LX_FILE_CASE_SENSITIVE_DIR x10

LxUid

Especifica a ID de usuário do arquivo.

LxGid

Especifica a ID do grupo do arquivo.

LxMode

Especifica o tipo de arquivo linux e as permissões do sistema de arquivos. Esses valores são definidos em sys/stat.h no SDK do Windows.

  • S_IFLNK
  • S_IFSOCK
  • S_IFBLK
Sinalizador Descrição
_S_IFMT 0xF000 Máscara do tipo de arquivo
_S_IFDIR 0x4000 Diretório
_S_IFCHR 0x2000 Caractere especial
_S_IFIFO 0x1000 Pipe
_S_IFREG 0x8000 Regular
_S_IREAD 0x0100 Permissão de leitura, proprietário
_S_IWRITE 0x0080 Permissão de gravação, proprietário
_S_IEXEC 0x0040 Permissão para executar/pesquisa, proprietário

LxDeviceIdMajor

Para arquivos de dispositivo (_S_IFCHR ou S_IFBLK), especifica o número principal do dispositivo. Para outros tipos de arquivo, esse campo não é usado.

LxDeviceIdMinor

Para arquivos de dispositivo (_S_IFCHR ou S_IFBLK), especifica o número secundário do dispositivo. Para outros tipos de arquivo, esse campo não é usado.

Comentários

NtQueryInformationByName e NtQueryInformationFile retornam informações em uma estrutura FILE_STAT_LX_INFORMATION quando o parâmetro FileInformationClass é FileStatLxInformation.

Para obter mais informações sobre links simbólicos absolutos e relativos, consulte Criando links simbólicos na documentação do SDK do Microsoft Windows.

Requisitos

Requisito Valor
Cabeçalho ntifs.h

Confira também

NtQueryInformationByName

NtQueryInformationFile