Condividi tramite


Funzione FltFlushBuffers (fltkernel.h)

La routine FltFlushBuffers viene usata dal driver minifilter per inviare una richiesta di scaricamento per un determinato file nel file system. Usare FltFlushBuffers2 per specificare diverse opzioni di tipo di scaricamento.

Sintassi

NTSTATUS FLTAPI FltFlushBuffers(
  [in] PFLT_INSTANCE Instance,
  [in] PFILE_OBJECT  FileObject
);

Parametri

[in] Instance

Puntatore istanza opaca per il chiamante. Questo parametro è obbligatorio e non può essere NULL.

[in] FileObject

Puntatore a oggetti file per il file da scaricare. Questo parametro è obbligatorio e non può essere NULL.

Valore restituito

FltFlushBuffers restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:

Codice restituito Descrizione
STATUS_MEDIA_WRITE_PROTECTED
Il file si trova in un volume protetto da scrittura. Si tratta di un codice di errore.
STATUS_VOLUME_DISMOUNTED
Il file si trova in un volume attualmente non montato. Si tratta di un codice di errore.

Commenti

Un driver minifilter può chiamare FltFlushBuffers per inviare una richiesta di IRP_MJ_FLUSH_BUFFERS al file system per un determinato file. L'operazione di scaricamento è sincrona e viene rilasciata alle istanze sotto l'istanza specificata.

Se FileObject è per un file, sia i dati dei file che i metadati nella cache file verranno scritti e l'archiviazione sottostante verrà sincronizzata per scaricare la cache. Se FileObject è per un volume, il file system causerà la scrittura dei dati dei file e dei metadati per tutti i file modificati nel volume e l'archiviazione sottostante da sincronizzare per scaricare la cache. Usare FltFlushBuffers2 per controllare in modo più granulare il tipo di scaricamento che il file system deve eseguire.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione fltkernel.h (includere Fltkernel.h)
Libreria FltMgr.lib
IRQL PASSIVE_LEVEL

Vedi anche

FltFlushBuffers2

IRP_MJ_FLUSH_BUFFERS