Condividi tramite


Funzione FltSetInformationFile (fltkernel.h)

FltSetInformationFile imposta le informazioni per un determinato file.

Sintassi

NTSTATUS FLTAPI FltSetInformationFile(
  [in] PFLT_INSTANCE          Instance,
  [in] PFILE_OBJECT           FileObject,
  [in] PVOID                  FileInformation,
  [in] ULONG                  Length,
  [in] FILE_INFORMATION_CLASS FileInformationClass
);

Parametri

[in] Instance

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

[in] FileObject

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

[in] FileInformation

Puntatore a un buffer allocato dal chiamante che contiene informazioni da impostare per il file. Il parametro FileInformationClass specifica il tipo di informazioni. Questo parametro è obbligatorio e non può essere NULL.

[in] Length

Dimensioni, in byte, del buffer FileInformation .

[in] FileInformationClass

Specifica il tipo di informazioni da impostare per il file. Vengono definiti i valori seguenti.

Valore Significato
FileAllocationInformation Impostare FILE_ALLOCATION_INFORMATION per il file.
FileBasicInformation Impostare FILE_BASIC_INFORMATION per il file.
FileDispositionInformation Impostare FILE_DISPOSITION_INFORMATION per il file.
FileEndOfFileInformation Impostare FILE_END_OF_FILE_INFORMATION per il file.
FileLinkInformation Impostare FILE_LINK_INFORMATION per il file.
FilePositionInformation Impostare FILE_POSITION_INFORMATION per il file.
FileRenameInformation Impostare FILE_RENAME_INFORMATION per il file. Per altre informazioni sulla ridenominazione dei file, vedere la sezione Osservazioni seguente.
FileValidDataLengthInformation Impostare FILE_VALID_DATA_LENGTH_INFORMATION per il file.

Valore restituito

FltSetInformationFile restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato.

Commenti

Un driver minifilter chiama FltSetInformationFile per impostare le informazioni per un determinato file. Il file deve essere aperto.

Un'operazione di ridenominazione di file impone la restrizione seguente sui valori dei parametri passati a FltSetInformationFile: come indicato nella voce di riferimento per FILE_RENAME_INFORMATION, un file o una directory può essere rinominato solo all'interno di un volume. In altre parole, un'operazione di ridenominazione non può causare lo spostamento di un file o di una directory in un volume diverso. A differenza di ZwSetInformationFile, FltSetInformationFile non convalida il contenuto della struttura FILE_RENAME_INFORMATION. Pertanto il chiamante di FltSetInformationFile è responsabile di garantire che il nuovo nome per il file o la directory si trova nello stesso volume del nome precedente.

I driver minifilter devono usare FltSetInformationFile , non ZwSetInformationFile, per rinominare un file.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione fltkernel.h (include Fltkernel.h)
Libreria FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

Vedi anche

FILE_ALLOCATION_INFORMATION

FILE_BASIC_INFORMATION

FILE_DISPOSITION_INFORMATION

FILE_END_OF_FILE_INFORMATION

FILE_LINK_INFORMATION

FILE_POSITION_INFORMATION

FILE_RENAME_INFORMATION

FILE_VALID_DATA_LENGTH_INFORMATION

FltQueryInformationFile

FltQueryVolumeInformationFile

ZwSetInformationFile