Share via


codice di controllo FSCTL_SET_ZERO_DATA

Il codice di controllo FSCTL_SET_ZERO_DATA riempie un intervallo specificato di un file con zeri (0). Se il file è di tipo sparse o compresso, il file system NTFS può deallocare lo spazio su disco nel file. In questo modo l'intervallo di byte viene impostato su zero (0) senza estendere le dimensioni del file.

Per eseguire questa operazione da un driver, chiamare FltFsControlFile con i parametri seguenti.

Parametri

  • Istanza: puntatore dell'istanza opaca per il chiamante. Questo parametro è obbligatorio e non può essere NULL.

  • FileObject [in]: puntatore dell'oggetto file al file in cui scrivere zeri. Questo parametro è obbligatorio e non può essere NULL.

  • FsControlCode [in]: codice di controllo per l'operazione.

Usare FSCTL_SET_ZERO_DATA per questa operazione.

Il membro FileOffset è l'offset di byte del primo byte da impostare su zeri (0) e il membro BeyondFinalZero è l'offset di byte del primo byte oltre l'ultimo zero (0) byte.

Il membro Flags in FILE_ZERO_DATA_INFORMATION_EX specifica i modificatori all'operazione. Ad esempio, quando Flags è impostato su FILE_ZERO_DATA_INFORMATION_FLAG_PRESERVE_CACHED_DATA, il contenuto della cache corrispondente a questo intervallo del file non viene eliminato.

  • InputBufferLength [in]: dimensioni del buffer di input, in byte.

  • OutputBuffer [out]: non usato con questa operazione; impostare su NULL.

  • OutputBufferLength [out]: non usato con questa operazione; impostato su zero.

Blocco dello stato

FltFsControlFile restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato.

Codice restituito Significato
STATUS _INSUFFICIENT_RESOURCES Memoria insufficiente per completare l'operazione.
STATUS_INVALID_PARAMETER InputBufferLength è minore delle dimensioni delle strutture FILE_ZERO_DATA_INFORMATION o del file specificato è un file di metadati di sistema o una directory.
STATUS_ACCESS_DENIED La FILE_ZERO_DATA_INFORMATION_FLAG_PRESERVE_CACHED_DATA viene impostata dalla modalità utente.
STATUS_MEDIA_WRITE_PROTECTED Il volume è attualmente protetto da scrittura.

Requisiti

Tipo di requisito Requisito
Intestazione Ntifs.h (include Ntifs.h)

Vedi anche

FltFsControlFile

FILE_ZERO_DATA_INFORMATION

FILE_ZERO_DATA_INFORMATION_EX