Compartilhar via


FLT_PARAMETERS para união IRP_MJ_QUERY_OPEN

O componente da união a seguir é usado quando o campo MajorFunction da estrutura FLT_IO_PARAMETER_BLOCK para a operação for IRP_MJ_QUERY_OPEN.

Sintaxe

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    PIRP                   Irp;
    PVOID                  FileInformation;
    PULONG                 Length;
    FILE_INFORMATION_CLASS FileInformationClass;
  } QueryOpen;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Membros

  • Irp: um ponteiro para o IRP associado a esta operação.

  • FileInformation: um ponteiro para um buffer alocado pelo chamador no qual a rotina grava as informações solicitadas sobre o objeto de arquivo. O membro FileInformationClass especifica o tipo de informação que o chamador solicita.

  • Comprimento: um ponteiro para o tamanho, em bytes, do buffer apontado por FileInformation.

  • FileInformationClass: especifica o tipo de informação a ser retornado sobre o arquivo, no buffer para o qual FileInformation aponta. Os drivers intermediários e de dispositivo podem especificar qualquer um dos seguintes valores de FILE_INFORMATION_CLASS. Outros valores fazem com que a chamada falhe e não devem ser passados para chamadas PreQueryOpen/PostQueryOpen.

    Valor FILE_INFORMATION_CLASS Tipos de informações retornadas
    FileStatInformation Uma estrutura FILE_STAT_INFORMATION. Essa estrutura contém uma máscara de acesso. Para obter mais informações sobre máscaras de acesso, consulte ACCESS_MASK.
    FileStatLxInformation Uma estrutura FILE_STAT_LX_INFORMATION. Essa estrutura contém uma máscara de acesso. Para obter mais informações sobre máscaras de acesso, consulte ACCESS_MASK.
    FileCaseSensitiveInformation Uma estrutura FILE_CASE_SENSITIVE_INFORMATION.
    FileStatBasicInformation Uma estrutura FILE_STAT_BASIC_INFORMATION.

Comentários

Uma estrutura FLT_PARAMETERS para operações IRP_MJ_QUERY_OPEN contém os parâmetros para uma operação QueryOpen, 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_QUERY_OPEN é uma operação de retorno de chamada do sistema de arquivos (FSFilter). Um filtro pode rejeitar a operação em seu retorno de chamada pré-operação e retorno de chamada pós-operação usando FLT_PREOP_DISALLOW_FSFILTER_IO e FLT_POSTOP_DISALLOW_FSFILTER_IO, respectivamente.

O Sistema de Arquivos não preenche o campo Informações no bloco IO_STATUS. Os filtros não devem inspecionar esse valor em suas pós-chamadas.

Para obter mais informações sobre operações de retorno de chamada FSFilter, consulte a entrada de referência para FsRtlRegisterFileSystemFilterCallbacks.

Requisitos

Tipo de requisito Requisito
Cabeçalho Fltkernel.h (inclui Fltkernel.h)

Confira também

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

FsRtlRegisterFileSystemFilterCallbacks