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:
- FilterInstanceFindFirst
- FilterInstanceFindNext
- FilterInstanceGetInformation
- FilterVolumeInstanceFindFirst
- FilterVolumeInstanceFindNext
- FltEnumerateInstanceInformationByFilter
- FltEnumerateInstanceInformationByVolume
- FltGetInstanceInformation
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
FltEnumerateInstanceInformationByFilter