estrutura FILE_NOTIFY_EXTENDED_INFORMATION (ntifs.h)
FILE_NOTIFY_EXTENDED_INFORMATION fornece informações sobre uma alteração de diretório em resposta a uma solicitação de IRP_MJ_DIRECTORY_CONTROL com um código de função secundária IRP_MN_NOTIFY_CHANGE_DIRECTORY quando DIRECTORY_NOTIFY_INFORMATION_CLASS é DirectoryNotifyExtendedInformation.
Sintaxe
typedef struct _FILE_NOTIFY_EXTENDED_INFORMATION {
ULONG NextEntryOffset;
ULONG Action;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastModificationTime;
LARGE_INTEGER LastChangeTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER AllocatedLength;
LARGE_INTEGER FileSize;
ULONG FileAttributes;
union {
ULONG ReparsePointTag;
ULONG EaSize;
} DUMMYUNIONNAME;
LARGE_INTEGER FileId;
LARGE_INTEGER ParentFileId;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NOTIFY_EXTENDED_INFORMATION, *PFILE_NOTIFY_EXTENDED_INFORMATION;
Membros
NextEntryOffset
O número de bytes que devem ser ignorados para chegar ao próximo registro. Um valor zero indica que este é o último registro.
Action
O tipo de alteração que ocorreu. Esse membro pode ser um dos valores a seguir.
Valor | Significado |
---|---|
FILE_ACTION_ADDED (0x00000001) | Um arquivo foi adicionado ao diretório. |
FILE_ACTION_REMOVED (0x00000002) | Um arquivo foi removido do diretório. |
FILE_ACTION_MODIFIED (0x00000003) | O diretório foi modificado. Isso pode ser uma alteração no carimbo de data/hora ou atributos. |
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) | O diretório foi renomeado e esse é o nome antigo. |
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) | O diretório foi renomeado e esse é o novo nome. |
CreationTime
A data e hora em que o diretório ou arquivo foi criado e adicionado ao sistema de arquivos.
LastModificationTime
A data e hora em que o conteúdo do diretório ou arquivo foi modificado pela última vez no sistema de arquivos.
LastChangeTime
A data e hora em que os metadados ou o conteúdo do diretório ou arquivo foram alterados pela última vez no sistema de arquivos.
LastAccessTime
A data e hora em que o diretório ou arquivo foi acessado pela última vez no sistema de arquivos.
AllocatedLength
O tamanho alocado do arquivo, em bytes.
FileSize
O novo tamanho do diretório ou arquivo em bytes ou o tamanho antigo se o tamanho não for alterado.
FileAttributes
Atributos de arquivo, que podem ser qualquer combinação válida do seguinte:
- FILE_ATTRIBUTE_READONLY
- FILE_ATTRIBUTE_HIDDEN
- FILE_ATTRIBUTE_SYSTEM
- FILE_ATTRIBUTE_DIRECTORY
- FILE_ATTRIBUTE_ARCHIVE
- FILE_ATTRIBUTE_NORMAL
- FILE_ATTRIBUTE_TEMPORARY
- FILE_ATTRIBUTE_COMPRESSED
DUMMYUNIONNAME
DUMMYUNIONNAME.ReparsePointTag
A marca do identificador de um ponto de nova análise para o diretório ou arquivo.
DUMMYUNIONNAME.EaSize
Comprimento combinado dos atributos estendidos (EA) para o arquivo, em bytes.
FileId
O identificador do diretório ou arquivo. Esse número é gerado e atribuído ao arquivo pelo sistema de arquivos.
ParentFileId
O identificador do diretório pai do arquivo.
FileNameLength
O tamanho da parte do nome do arquivo do registro, em bytes. Esse valor não inclui um caractere nulo de terminação.
FileName[1]
Um campo de comprimento variável que contém o nome do arquivo relativo ao identificador de diretório. O nome do arquivo está no formato de caractere Unicode e não é encerrado em nulo.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ntifs.h |