Partager via


Fonction FltGetInstanceInformation (fltkernel.h)

La routine FltGetInstanceInformation retourne des informations sur un pilote minifilter instance.

Syntaxe

NTSTATUS FLTAPI FltGetInstanceInformation(
  [in]  PFLT_INSTANCE              Instance,
  [in]  INSTANCE_INFORMATION_CLASS InformationClass,
  [out] PVOID                      Buffer,
  [in]  ULONG                      BufferSize,
  [out] PULONG                     BytesReturned
);

Paramètres

[in] Instance

Pointeur instance opaque pour l’appelant.

[in] InformationClass

Type d’informations demandées. Ce paramètre peut avoir l’une des valeurs suivantes.

Valeur Signification
InstanceBasicInformation La mémoire tampon pointée par le paramètre Buffer reçoit une structure INSTANCE_BASIC_INFORMATION pour le instance.
InstanceFullInformation La mémoire tampon pointée par le paramètre Buffer reçoit une structure INSTANCE_FULL_INFORMATION pour le instance.
InstancePartialInformation La mémoire tampon pointée vers le paramètre Buffer reçoit une structure INSTANCE_PARTIAL_INFORMATION pour le instance.
InstanceAggregateStandardInformation La mémoire tampon vers laquelle pointe le paramètre Buffer reçoit une structure INSTANCE_AGGREGATE_STANDARD_INFORMATION pour le instance. La partie LegacyFilter de la structure n’est pas utilisée. Cette structure est disponible à partir de Windows Vista.

[out] Buffer

Pointeur vers une mémoire tampon allouée à l’appelant qui reçoit les informations demandées. Le type des informations retournées dans la mémoire tampon est défini par le paramètre InformationClass .

[in] BufferSize

Taille, en octets, de la mémoire tampon vers laquelle pointe le paramètre Buffer . L’appelant doit définir ce paramètre en fonction de la valeur InformationClass donnée.

[out] BytesReturned

Pointeur vers une variable allouée à l’appelant qui reçoit le nombre d’octets retournés dans la mémoire tampon vers laquelle la mémoire tampon pointe. Si la valeur d’entrée de BufferSize est trop petite, FltGetInstanceInformation retourne STATUS_BUFFER_TOO_SMALL et définit cette variable sur le nombre d’octets requis pour stocker les informations demandées. Ce paramètre est obligatoire et ne peut pas être NULL.

Valeur retournée

FltGetInstanceInformation retourne STATUS_SUCCESS ou une valeur NTSTATUS appropriée, par exemple :

Code de retour Description
STATUS_BUFFER_TOO_SMALL
La mémoire tampon vers laquelle pointe le paramètre Buffer n’est pas suffisamment grande pour stocker les informations demandées. Il s’agit d’un code d’erreur.
STATUS_INVALID_PARAMETER
Une valeur non valide a été spécifiée pour le paramètre InformationClass . Par exemple, si InstanceAggregateStandardInformation est spécifié sur les systèmes d’exploitation antérieurs à Windows Vista, la routine retourne STATUS_INVALID_PARAMETER. Il s’agit d’un code d’erreur.

Remarques

Avec un pointeur vers un minifiltre instance, cette routine retourne des informations sur le minifiltre instance. Le type d’informations instance retournées est déterminé par le paramètre InformationClass.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête fltkernel.h (incluez FltKernel.h)
Bibliothèque FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Voir aussi

FltEnumerateFilterInformation

FltEnumerateInstanceInformationByFilter

FltEnumerateInstanceInformationByVolume

FltGetFilterInformation

INSTANCE_AGGREGATE_STANDARD_INFORMATION

INSTANCE_BASIC_INFORMATION

INSTANCE_FULL_INFORMATION

INSTANCE_PARTIAL_INFORMATION