structure INSTANCE_AGGREGATE_STANDARD_INFORMATION (fltuserstructures.h)
La structure de INSTANCE_AGGREGATE_STANDARD_INFORMATION allouée à l’appelant contient des informations standard agrégées sur un pilote minifiltre instance ou un pilote de filtre hérité.
Syntaxe
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;
Membres
NextEntryOffset
Décalage d’octet de la structure INSTANCE_AGGREGATE_STANDARD_INFORMATION suivante si plusieurs structures sont présentes dans une mémoire tampon. Ce membre est égal à zéro si aucune autre structure ne suit celle-ci.
Flags
Indique si le pilote de filtre est un pilote de filtre hérité ou un pilote de minifiltre. Ce membre doit contenir l’un des indicateurs suivants.
Indicateur | Signification |
---|---|
FLTFL_IASI_IS_MINIFILTER | Le pilote de filtre est un pilote de minifiltre ; utilisez la partie MiniFilter de l’union. |
FLTFL_IASI_IS_LEGACYFILTER | Le pilote de filtre est un pilote de filtre hérité ; utilisez la partie LegacyFilter de l’union. |
Type
Variable de structure imbriquée avec les membres suivants.
Type.MiniFilter
Type.MiniFilter.Flags
Masque de bits d’indicateurs qui décrivent les attributs du minifiltre instance. Voici des valeurs d’indicateur valides.
Indicateur | Signification |
---|---|
FLTFL_IASIM_DETACHED_VOLUME | Le volume n’est actuellement pas attaché à une pile de stockage. |
Type.MiniFilter.FrameID
Index de base zéro utilisé pour identifier l’image du gestionnaire de filtres dans laquelle se trouve le minifiltre instance.
Type.MiniFilter.VolumeFileSystemType
Identifie le type de système de fichiers auquel le minifiltre instance est attaché. Les valeurs possibles pour ce membre sont répertoriées dans FLT_FILESYSTEM_TYPE.
Type.MiniFilter.InstanceNameLength
Longueur, en octets, du nom du minifiltre instance.
Type.MiniFilter.InstanceNameBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère du minifiltre Unicode instance chaîne de nom. Cette chaîne n’est pas terminée par null.
Type.MiniFilter.AltitudeLength
Longueur, en octets, du minifiltre instance chaîne d’altitude.
Type.MiniFilter.AltitudeBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère du minifiltre Unicode instance chaîne d’altitude. Cette chaîne n’est pas terminée par null.
Type.MiniFilter.VolumeNameLength
Longueur, en octets, du nom du volume auquel le minifiltre instance est attaché.
Type.MiniFilter.VolumeNameBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère de la chaîne de nom de volume Unicode pour le volume auquel le minifiltre instance est attaché. Cette chaîne n’est pas terminée par null.
Type.MiniFilter.FilterNameLength
Longueur, en octets, du nom du minifiltre du minifiltre à partir duquel le minifiltre instance a été dérivé.
Type.MiniFilter.FilterNameBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère de la chaîne de nom du minifiltre Unicode pour le minifiltre à partir duquel le minifiltre instance a été dérivé. Cette chaîne n’est pas terminée par null.
Type.MiniFilter.SupportedFeatures
Indicateurs de fonctionnalité pris en charge pour le filtre, comme spécifié par la valeur du Registre SupportedFeatures d’un minifiltre. Les fonctionnalités prises en charge sont une combinaison OR au niveau du bit des indicateurs suivants.
Valeur | Signification |
---|---|
SUPPORTED_FS_FEATURES_OFFLOAD_READ (0x01) | Le volume prend en charge les opérations de lecture déchargées. |
SUPPORTED_FS_FEATURES_OFFLOAD_WRITE (0x02) | Le volume prend en charge les opérations d’écriture déchargées. |
SUPPORTED_FS_FEATURES_QUERY_OPEN (0x04) | Le volume prend en charge les opérations d’ouverture de requête. |
SUPPORTED_FS_FEATURES_BYPASS_IO (0x08) | Le volume prend en charge BypassIO. Cet indicateur est disponible à partir de Windows 11. |
Type.LegacyFilter
Variable de structure imbriquée avec les membres suivants.
Type.LegacyFilter.Flags
Masque de bits d’indicateurs qui décrivent les attributs du filtre hérité. Voici des valeurs d’indicateur valides.
Indicateur | Signification |
---|---|
FLTFL_IASIL_DETACHED_VOLUME | Le volume n’est actuellement pas attaché à une pile de stockage. |
Type.LegacyFilter.AltitudeLength
Longueur, en octets, de la chaîne d’altitude de filtre héritée.
Type.LegacyFilter.AltitudeBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère de la chaîne d’altitude du filtre unicode hérité. Cette chaîne n’est pas terminée par null.
À compter de Windows Vista, les altitudes sont attribuées aux pilotes de filtre hérités en fonction du groupe d’ordre de charge du pilote. Cela garantit que les pilotes de minifiltre seront correctement superposés et inférieurs aux pilotes de filtre hérités, même si un ou plusieurs des pilotes de filtre sont chargés dans le désordre.
Type.LegacyFilter.VolumeNameLength
Longueur, en octets, du nom du volume auquel le filtre hérité est attaché.
Type.LegacyFilter.VolumeNameBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère de la chaîne de nom de volume Unicode pour le volume auquel le filtre hérité est attaché. Cette chaîne n’est pas terminée par null.
Type.LegacyFilter.FilterNameLength
Longueur, en octets, du nom de filtre hérité.
Type.LegacyFilter.FilterNameBufferOffset
Décalage d’octet (par rapport au début de la structure) du premier caractère de la chaîne de nom de filtre hérité Unicode. Cette chaîne n’est pas terminée par null.
Type.LegacyFilter.SupportedFeatures
Indicateurs de fonctionnalité pris en charge pour le filtre hérité.
Les fonctionnalités prises en charge sont une combinaison OR au niveau du bit des indicateurs suivants.
Valeur | Signification |
---|---|
SUPPORTED_FS_FEATURES_OFFLOAD_READ (0x01) | Le volume prend en charge les opérations de lecture déchargées. |
SUPPORTED_FS_FEATURES_OFFLOAD_WRITE (0x02) | Le volume prend en charge les opérations d’écriture déchargées. |
Remarques
Une structure de type INSTANCE_AGGREGATE_STANDARD_INFORMATION peut être allouée à partir d’un pool paginé ou non paginé. Cette structure est passée en tant que paramètre à des routines telles que les suivantes :
- FilterInstanceFindFirst
- FilterInstanceFindNext
- FilterInstanceGetInformation
- FilterVolumeInstanceFindFirst
- FilterVolumeInstanceFindNext
- FltEnumerateInstanceInformationByFilter
- FltEnumerateInstanceInformationByVolume
- FltGetInstanceInformation
La structure INSTANCE_AGGREGATE_STANDARD_INFORMATION doit être alignée sur une limite LONGLONG (8 octets). Si une mémoire tampon contient au moins deux de ces structures, la valeur NextEntryOffset dans chaque entrée se situe sur une limite de 8 octets.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
En-tête | fltuserstructures.h (include FltUser.h, FltKernel.h) |
Voir aussi
FltEnumerateInstanceInformationByFilter