estrutura FILE_NOTIFY_INFORMATION (ntifs.h)
FILE_NOTIFY_INFORMATION descreve as alterações em um diretório. Ele é retornado em resposta a uma solicitação de IRP_MJ_DIRECTORY_CONTROL com um IRP_MN_NOTIFY_CHANGE_DIRECTORY código de função secundária quando DIRECTORY_NOTIFY_INFORMATION_CLASS é DirectoryNotifyInformation.
Sintaxe
typedef struct _FILE_NOTIFY_INFORMATION {
ULONG NextEntryOffset;
ULONG Action;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NOTIFY_INFORMATION, *PFILE_NOTIFY_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) | O arquivo foi adicionado ao diretório. |
FILE_ACTION_REMOVED (0x00000002) | O arquivo foi removido do diretório. |
FILE_ACTION_MODIFIED (0x00000003) | O arquivo foi modificado. Isso pode ser uma alteração no carimbo de data/hora ou atributos. |
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) | O arquivo foi renomeado e esse é o nome antigo. |
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) | O arquivo foi renomeado e esse é o novo nome. |
FILE_ACTION_ADDED_STREAM (0x00000006) | Um fluxo nomeado foi adicionado ao arquivo. |
FILE_ACTION_REMOVED_STREAM (0x00000007) | Um fluxo nomeado foi removido do arquivo. |
FILE_ACTION_MODIFIED_STREAM (0x00000008) | Um fluxo nomeado foi modificado. A modificação pode ser uma alteração nos dados ou atributos do fluxo nomeado. |
FILE_ACTION_REMOVED_BY_DELETE (0x00000009) | Uma ID de objeto foi removida porque o arquivo ao qual a ID do objeto se referia foi excluído. Essa notificação só é enviada quando o diretório que está sendo monitorado é o diretório especial "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FILE_ACTION_ID_NOT_TUNNELLED (0x0000000A) | Falha na tentativa de túnel de informações de ID de objeto para um arquivo que está sendo criado ou renomeado porque a ID do objeto está em uso por outro arquivo no mesmo volume. Essa notificação só é enviada quando o diretório que está sendo monitorado é o diretório especial "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FILE_ACTION_TUNNELLED_ID_COLLISION (0x0000000B) | Falha na tentativa de túnel de informações de ID de objeto para um arquivo que está sendo renomeado porque o arquivo já tem uma ID de objeto. Essa notificação só é enviada quando o diretório que está sendo monitorado é o diretório especial "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FileNameLength
O tamanho da parte do nome do arquivo do registro, em bytes. Esse valor não inclui o 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.
Se houver um nome curto e longo para o arquivo, apenas um desses nomes será retornado, mas não será especificado qual deles.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 |
Cabeçalho | ntifs.h |