FILE_NOTIFY_INFORMATION struttura (ntifs.h)
FILE_NOTIFY_INFORMATION descrive le modifiche apportate a una directory. Viene restituito in risposta a una richiesta di IRP_MJ_DIRECTORY_CONTROL con un codice di funzione secondario IRP_MN_NOTIFY_CHANGE_DIRECTORY quando DIRECTORY_NOTIFY_INFORMATION_CLASS è DirectoryNotifyInformation.
Sintassi
typedef struct _FILE_NOTIFY_INFORMATION {
ULONG NextEntryOffset;
ULONG Action;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NOTIFY_INFORMATION, *PFILE_NOTIFY_INFORMATION;
Members
NextEntryOffset
Numero di byte che devono essere ignorati per ottenere il record successivo. Un valore pari a zero indica che si tratta dell'ultimo record.
Action
Tipo di modifica che si è verificato. Questo membro può essere uno dei valori seguenti.
Valore | Significato |
---|---|
FILE_ACTION_ADDED (0x00000001) | Il file è stato aggiunto alla directory. |
FILE_ACTION_REMOVED (0x00000002) | Il file è stato rimosso dalla directory. |
FILE_ACTION_MODIFIED (0x00000003) | Il file è stato modificato. Questa può essere una modifica nel timestamp o negli attributi. |
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) | Il file è stato rinominato e questo è il nome precedente. |
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) | Il file è stato rinominato e questo è il nuovo nome. |
FILE_ACTION_ADDED_STREAM (0x00000006) | Un flusso denominato è stato aggiunto al file. |
FILE_ACTION_REMOVED_STREAM (0x00000007) | Un flusso denominato è stato rimosso dal file. |
FILE_ACTION_MODIFIED_STREAM (0x00000008) | È stato modificato un flusso denominato. La modifica può essere una modifica ai dati o agli attributi del flusso denominato. |
FILE_ACTION_REMOVED_BY_DELETE (0x00000009) | Un ID oggetto è stato rimosso perché il file l'ID oggetto a cui è stato fatto riferimento è stato eliminato. Questa notifica viene inviata solo quando la directory monitorata è la directory speciale "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FILE_ACTION_ID_NOT_TUNNELLED (0x0000000A) | Tentativo di tunneling delle informazioni sull'ID oggetto in un file creato o rinominato non riuscito perché l'ID oggetto è in uso da un altro file nello stesso volume. Questa notifica viene inviata solo quando la directory monitorata è la directory speciale "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FILE_ACTION_TUNNELLED_ID_COLLISION (0x0000000B) | Tentativo di tunneling delle informazioni sull'ID oggetto in un file rinominato non riuscito perché il file ha già un ID oggetto. Questa notifica viene inviata solo quando la directory monitorata è la directory speciale "$Extend$ObjId:$O:$INDEX_ALLOCATION". |
FileNameLength
Dimensioni della parte del nome file del record, in byte. Questo valore non include il carattere Null terminante.
FileName[1]
Campo a lunghezza variabile contenente il nome del file relativo all'handle della directory. Il nome del file è in formato carattere Unicode e non viene terminato null.
Se è presente sia un nome breve che lungo per il file, verrà restituito solo uno di questi nomi, ma non è specificato quale.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Intestazione | ntifs.h |