estrutura INSTANCE_AGGREGATE_STANDARD_INFORMATION (fltuserstructures.h)

A estrutura de INSTANCE_AGGREGATE_STANDARD_INFORMATION alocada pelo chamador contém informações padrão agregadas sobre uma instância de driver de minifiltro ou um driver de filtro herdado.

Sintaxe

typedef struct _INSTANCE_AGGREGATE_STANDARD_INFORMATION {
  ULONG NextEntryOffset;
  ULONG Flags;
  union {
    struct {
      ULONG               Flags;
      ULONG               FrameID;
      FLT_FILESYSTEM_TYPE VolumeFileSystemType;
      USHORT              InstanceNameLength;
      USHORT              InstanceNameBufferOffset;
      USHORT              AltitudeLength;
      USHORT              AltitudeBufferOffset;
      USHORT              VolumeNameLength;
      USHORT              VolumeNameBufferOffset;
      USHORT              FilterNameLength;
      USHORT              FilterNameBufferOffset;
      ULONG               SupportedFeatures;
    } MiniFilter;
    struct {
      ULONG  Flags;
      USHORT AltitudeLength;
      USHORT AltitudeBufferOffset;
      USHORT VolumeNameLength;
      USHORT VolumeNameBufferOffset;
      USHORT FilterNameLength;
      USHORT FilterNameBufferOffset;
      ULONG  SupportedFeatures;
    } LegacyFilter;
  } Type;
} INSTANCE_AGGREGATE_STANDARD_INFORMATION, *PINSTANCE_AGGREGATE_STANDARD_INFORMATION;

Membros

NextEntryOffset

Deslocamento de bytes da próxima estrutura INSTANCE_AGGREGATE_STANDARD_INFORMATION se várias estruturas estiverem presentes em um buffer. Esse membro será zero se nenhuma outra estrutura seguir esta.

Flags

Indica se o driver de filtro é um driver de filtro herdado ou um driver de minifiltro. Esse membro deve conter um dos sinalizadores a seguir.

Sinalizador Significado
FLTFL_IASI_IS_MINIFILTER O driver de filtro é um driver de minifiltro; use a parte MiniFilter da união.
FLTFL_IASI_IS_LEGACYFILTER O driver de filtro é um driver de filtro herdado; use a parte LegacyFilter da união.

Type

Variável de estrutura aninhada com os membros a seguir.

Type.MiniFilter

Type.MiniFilter.Flags

Uma máscara de bits de sinalizadores que descrevem atributos da instância de minifiltro. Veja a seguir valores de sinalizador válidos.

Sinalizador Significado
FLTFL_IASIM_DETACHED_VOLUME No momento, o volume não está anexado a uma pilha de armazenamento.

Type.MiniFilter.FrameID

Índice baseado em zero usado para identificar o quadro do gerenciador de filtros no qual a instância do minifiltro está.

Type.MiniFilter.VolumeFileSystemType

Identifica o tipo de sistema de arquivos ao qual a instância de minifiltro está anexada. Os valores possíveis para esse membro são listados em FLT_FILESYSTEM_TYPE.

Type.MiniFilter.InstanceNameLength

Comprimento, em bytes, do nome da instância do minifiltro.

Type.MiniFilter.InstanceNameBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de nome da instância de minifiltro Unicode. Essa cadeia de caracteres não é terminada em NULL.

Type.MiniFilter.AltitudeLength

Comprimento, em bytes, da cadeia de caracteres de altitude da instância de minifiltro.

Type.MiniFilter.AltitudeBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de altitude da instância de minifiltro Unicode. Essa cadeia de caracteres não é terminada em NULL.

Type.MiniFilter.VolumeNameLength

Comprimento, em bytes, do nome do volume ao qual a instância de minifiltro está anexada.

Type.MiniFilter.VolumeNameBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de nome de volume Unicode para o volume ao qual a instância de minifiltro está anexada. Essa cadeia de caracteres não é terminada em NULL.

Type.MiniFilter.FilterNameLength

Comprimento, em bytes, do nome do minifiltro do minifiltro do qual a instância de minifiltro foi derivada.

Type.MiniFilter.FilterNameBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de nome do minifiltro Unicode para o minifiltro do qual a instância de minifiltro foi derivada. Essa cadeia de caracteres não é terminada em NULL.

Type.MiniFilter.SupportedFeatures

Os sinalizadores de recursos com suporte para o filtro, conforme especificado pelo valor do Registro SupportedFeatures de um minifiltro. Os recursos com suporte são uma combinação OR bit a bit dos sinalizadores a seguir.

Valor Significado
SUPPORTED_FS_FEATURES_OFFLOAD_READ (0x01) O volume dá suporte a operações de leitura descarregadas.
SUPPORTED_FS_FEATURES_OFFLOAD_WRITE (0x02) O volume dá suporte a operações de gravação descarregadas.
SUPPORTED_FS_FEATURES_QUERY_OPEN (0x04) O volume dá suporte a operações abertas de consulta.
SUPPORTED_FS_FEATURES_BYPASS_IO (0x08) O volume dá suporte a BypassIO. Esse sinalizador está disponível a partir de Windows 11.

Type.LegacyFilter

Variável de estrutura aninhada com os membros a seguir.

Type.LegacyFilter.Flags

Uma máscara de bits de sinalizadores que descrevem atributos do filtro herdado. Veja a seguir valores de sinalizador válidos.

Sinalizador Significado
FLTFL_IASIL_DETACHED_VOLUME No momento, o volume não está anexado a uma pilha de armazenamento.

Type.LegacyFilter.AltitudeLength

Comprimento, em bytes, da cadeia de caracteres de altitude do filtro herdado.

Type.LegacyFilter.AltitudeBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de altitude do filtro herdado Unicode. Essa cadeia de caracteres não é terminada em NULL.

A partir do Windows Vista, as altitudes são atribuídas a drivers de filtro herdados com base no grupo de pedidos de carga do driver. Isso garante que os drivers de minifiltro sejam colocados em camadas corretamente acima e abaixo dos drivers de filtro herdados, mesmo que um ou mais drivers de filtro sejam carregados fora de ordem.

Type.LegacyFilter.VolumeNameLength

Comprimento, em bytes, do nome do volume ao qual o filtro herdado está anexado.

Type.LegacyFilter.VolumeNameBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de nome de volume Unicode para o volume ao qual o filtro herdado está anexado. Essa cadeia de caracteres não é terminada em NULL.

Type.LegacyFilter.FilterNameLength

Comprimento, em bytes, do nome do filtro herdado.

Type.LegacyFilter.FilterNameBufferOffset

Deslocamento de bytes (em relação ao início da estrutura) do primeiro caractere da cadeia de caracteres de nome de filtro herdado Unicode. Essa cadeia de caracteres não é terminada em NULL.

Type.LegacyFilter.SupportedFeatures

Os sinalizadores de recursos com suporte para o filtro herdado.

Os recursos com suporte são uma combinação OR bit a bit dos sinalizadores a seguir.

Valor Significado
SUPPORTED_FS_FEATURES_OFFLOAD_READ (0x01) O volume dá suporte a operações de leitura descarregadas.
SUPPORTED_FS_FEATURES_OFFLOAD_WRITE (0x02) O volume dá suporte a operações de gravação descarregadas.

Comentários

Uma estrutura do tipo INSTANCE_AGGREGATE_STANDARD_INFORMATION pode ser alocada do pool paginado ou nãopagado. Essa estrutura é passada como um parâmetro para rotinas como a seguinte:

A estrutura INSTANCE_AGGREGATE_STANDARD_INFORMATION deve ser alinhada em um limite LONGLONG (8 bytes). Se um buffer contiver duas ou mais dessas estruturas, o valor NextEntryOffset em cada entrada cairá em um limite de 8 bytes.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Cabeçalho fltuserstructures.h (include FltUser.h, FltKernel.h)

Confira também

FilterInstanceFindFirst

FilterInstanceFindNext

FilterInstanceGetInformation

FilterVolumeInstanceFindFirst

FilterVolumeInstanceFindNext

FltEnumerateInstanceInformationByFilter

FltEnumerateInstanceInformationByVolume

FltGetInstanceInformation

INSTANCE_BASIC_INFORMATION

INSTANCE_FULL_INFORMATION

INSTANCE_PARTIAL_INFORMATION