Função FltSetInformationFile (fltkernel.h)
FltSetInformationFile define informações para um determinado arquivo.
Sintaxe
NTSTATUS FLTAPI FltSetInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass
);
Parâmetros
[in] Instance
Ponteiro de instância opaco para o chamador. Esse parâmetro é necessário e não pode ser NULL.
[in] FileObject
Ponteiro do objeto de arquivo para o arquivo. Esse parâmetro é necessário e não pode ser NULL.
[in] FileInformation
Ponteiro para um buffer alocado pelo chamador que contém informações a serem definidas para o arquivo. O parâmetro FileInformationClass especifica o tipo de informação. Esse parâmetro é necessário e não pode ser NULL.
[in] Length
Tamanho, em bytes, do buffer FileInformation.
[in] FileInformationClass
Especifica o tipo de informação a ser definida para o arquivo. Os valores a seguir são definidos.
Valor | Significado |
---|---|
FileAllocationInformation | Defina FILE_ALLOCATION_INFORMATION para o arquivo. |
FileBasicInformation | Defina FILE_BASIC_INFORMATION para o arquivo. |
FileDispositionInformation | Defina FILE_DISPOSITION_INFORMATION para o arquivo. |
FileEndOfFileInformation | Defina FILE_END_OF_FILE_INFORMATION para o arquivo. |
FileLinkInformation | Defina FILE_LINK_INFORMATION para o arquivo. |
FilePositionInformation | Defina FILE_POSITION_INFORMATION para o arquivo. |
FileRenameInformation | Defina FILE_RENAME_INFORMATION para o arquivo. Para obter mais informações sobre a renomeação de arquivo, consulte a seção Comentários a seguir. |
FileValidDataLengthInformation | Defina FILE_VALID_DATA_LENGTH_INFORMATION para o arquivo. |
Valor de retorno
FltSetInformationFile retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado.
Observações
Um driver de minifiltro chama FltSetInformationFile para definir informações para um determinado arquivo. No momento, o arquivo deve estar aberto.
Uma operação de renomeação de arquivo impõe a seguinte restrição aos valores de parâmetro passados para FltSetInformationFile: conforme observado na entrada de referência para FILE_RENAME_INFORMATION, um arquivo ou diretório só pode ser renomeado em um volume. Em outras palavras, uma operação de renomeação não pode fazer com que um arquivo ou diretório seja movido para um volume diferente. Ao contrário de ZwSetInformationFile, FltSetInformationFile não valida o conteúdo da estrutura de FILE_RENAME_INFORMATION. Portanto, o chamador de FltSetInformationFile é responsável por garantir que o novo nome do arquivo ou diretório esteja no mesmo volume que o nome antigo.
Os drivers de minifiltro devem usar FltSetInformationFile, não ZwSetInformationFile, para renomear um arquivo.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | fltkernel.h (inclua Fltkernel.h) |
biblioteca | FltMgr.lib |
de DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |