codice di controllo FSCTL_SET_REPARSE_POINT_EX
Il codice di controllo FSCTL_SET_REPARSE_POINT_EX imposta un punto di ripristino in un file o in una directory.
Per eseguire questa operazione, chiamare ZwFsControlFile con i parametri seguenti.
I minifiltri devono usare FltTagFile invece di FSCTL_SET_REPARSE_POINT_EX per impostare un reparse point.
Per altre informazioni sui reparse points e sul codice di controllo FSCTL_SET_REPARSE_POINT_EX, vedere la documentazione di Microsoft Windows SDK.
Parametri
FileHandle: handle di file per il file o la directory in cui impostare un reparse point. Questo parametro è obbligatorio e non può essere NULL.
FsControlCode: codice di controllo per l'operazione. Usare FSCTL_SET_REPARSE_POINT_EX per questa operazione.
InputBuffer: puntatore a una struttura REPARSE_GUID_DATA_BUFFER o REPARSE_DATA_BUFFER_EX allocata dal chiamante che contiene i dati del punto di analisi.
InputBufferLength: dimensioni, in byte, del buffer a cui punta il parametro InputBuffer . Per una struttura REPARSE_GUID_DATA_BUFFER, questo valore deve essere almeno REPARSE_GUID_DATA_BUFFER_HEADER_SIZE, oltre alle dimensioni dei dati definiti dall'utente e deve essere minore o uguale a MAXIMUM_REPARSE_DATA_BUFFER_SIZE. Per una struttura REPARSE_DATA_BUFFER_EX, questo valore deve essere almeno REPARSE_DATA_BUFFER_HEADER_SIZE, oltre alle dimensioni dei dati definiti dall'utente e deve essere minore o uguale a MAXIMUM_REPARSE_DATA_BUFFER_SIZE.
OutputBuffer: non usato con questa operazione; impostare su NULL.
OutputBufferLength: non usato con questa operazione; impostato su zero.
Blocco dello stato
ZwFsControlFile restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Valore | Descrizione |
---|---|
STATUS_DIRECTORY_NOT_EMPTY | Non è possibile impostare un reparse point in una directory nonempty. Si tratta di un codice di errore. |
STATUS_EAS_NOT_SUPPORTED | Un reparse point non può essere impostato su un file se la richiesta si trova in una transazione. Si tratta di un codice di errore. |
STATUS_IO_REPARSE_DATA_INVALID | Uno dei valori dei parametri specificati non è valido. Si tratta di un codice di errore. |
STATUS_IO_REPARSE_TAG_MISMATCH | Il tag reparse specificato dal chiamante non corrisponde al tag del reparse point da modificare. Si tratta di un codice di errore. |
STATUS_NOT_A_REPARSE_POINT | Il file o la directory non è un reparse point. Si tratta di un codice di errore. |
STATUS_REPARSE_ATTRIBUTE_CONFLICT | Il reparse point è un reparse point di terze parti e il GUID reparse specificato dal chiamante non corrisponde al GUID del reparse point da modificare. Si tratta di un codice di errore. |
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Ntifs.h (include Ntifs.h o Fltkernel.h) |