FLT_PARAMETERS para IRP_MJ_SET_INFORMATION união

O componente Union usado quando o campo MajorFunction da estrutura FLT_IO_PARAMETER_BLOCK para a operação é IRP_MJ_SET_INFORMATION.

Sintaxe

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    ULONG                                    Length;
    FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
    PFILE_OBJECT                             ParentOfTarget;
    union {
      struct {
        BOOLEAN ReplaceIfExists;
        BOOLEAN AdvanceOnly;
      };
      ULONG  ClusterCount;
      HANDLE DeleteHandle;
    };
    PVOID                                    InfoBuffer;
  } SetFileInformation;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Membros

  • SetFileInformation: estrutura que contém os membros a seguir.

  • Comprimento: comprimento, em bytes, do buffer no InfoBuffer.

  • FileInformationClass: tipo de informação a ser definido para o arquivo. Um dos seguintes:

    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.
    FileValidDataLengthInformation Defina FILE_VALID_DATA_LENGTH_INFORMATION para o arquivo.
  • ParentOfTarget: para operações de renomeação ou link. Se InfoBuffer-FileName> contiver um nome de arquivo totalmente qualificado ou se InfoBuffer-RootDirectory> não for NULL, esse membro será um ponteiro de objeto de arquivo para o diretório pai do arquivo que é o destino da operação. Caso contrário, será NULL.

  • ( struct sem nome )
    Estrutura que contém os membros a seguir.

  • ReplaceIfExists: para operações de renomeação ou link. Defina como TRUE para especificar que um arquivo que já existe com o mesmo nome deve ser substituído pelo arquivo fornecido. Defina como FALSE se a operação renomear ou vincular falhar se já existir um arquivo com o nome fornecido.

  • AdvanceOnly: um sinalizador para operações de fim de arquivo. Isso determina o uso do membro EndOfFileFILE_END_OF_FILE_INFORMATION estrutura quando FileInformationClass == FileEndOfFileInformation. Se TRUE, um novo comprimento de dados válido para o arquivo será definido a partir de EndOfFile somente se ele aumentar o comprimento de dados válido atual. Se FALSE, um novo tamanho de arquivo será definido de EndOfFile.

  • ClusterCount: reservado para uso do sistema. Não use.

  • DeleteHandle: reservado para uso do sistema. Não use.

  • InfoBuffer: ponteiro para um buffer de entrada que contém as informações do arquivo a serem definidas.

Comentários

A estrutura FLT_PARAMETERS para operações de IRP_MJ_SET_INFORMATION contém os parâmetros de uma operação set-information representada por uma estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA). Ele está contido em uma estrutura FLT_IO_PARAMETER_BLOCK.

IRP_MJ_SET_INFORMATION é uma operação baseada em IRP.

O membro AdvanceOnly é definido como TRUE pelo gerenciador de cache para notificar o sistema de arquivos para avançar o comprimento de dados válido atual no disco para o novo comprimento de dados válido em EndOfFile. Se AdvanceOnly for FALSE, um novo tamanho de arquivo, no membro EndOfFile , está sendo definido, que pode ser maior ou menor que o tamanho do arquivo atual.

Requisitos

Tipo de Requisito Requisito
parâmetro Fltkernel.h (inclua Fltkernel.h)

Confira também

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

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

IRP_MJ_SET_INFORMATION