Fonction FltGetBottomInstance (fltkernel.h)
FltGetBottomInstance retourne un pointeur d’instance opaque pour le pilote de minifiltre instance, le cas échéant, qui est attaché au bas de la pile de instance pour un volume donné.
Syntaxe
NTSTATUS FLTAPI FltGetBottomInstance(
[in] PFLT_VOLUME Volume,
[out] PFLT_INSTANCE *Instance
);
Paramètres
[in] Volume
Pointeur opaque pour le volume.
[out] Instance
Pointeur vers une variable allouée par l’appelant qui reçoit un pointeur d’instance opaque pour le instance inférieur pour ce volume. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
Valeur retournée
FltGetBottomInstance retourne STATUS_SUCCESS ou une valeur NTSTATUS appropriée, par exemple :
Code de retour | Description |
---|---|
|
Aucune instance correspondante n’a été trouvée. Il s’agit d’un code d’avertissement. |
Remarques
Une instance se trouve au bas du pilote minifiltre instance pile si son altitude est inférieure à celle de toutes les autres instances attachées au même volume. Le terme « altitude » fait référence à la position qu’un instance occupe dans le pilote minifiltre instance pile d’un volume. Plus l’altitude est élevée, plus le instance est éloigné du système de fichiers de base dans la pile. Un seul instance peut être attaché à une altitude donnée sur un volume donné.
L’altitude est spécifiée par une chaîne d’altitude, qui est une chaîne Unicode comptée composée d’un ou plusieurs chiffres décimaux compris entre 0 et 9, et elle peut inclure une seule virgule décimale. Par exemple, « 100.123456 » et « 03333 » sont des chaînes d’altitude valides.
La chaîne « 03333 » représente une altitude supérieure à « 100.123456 ». (Les zéros de début et de fin sont ignorés.) En d’autres termes, un instance dont l’altitude est « 03333 » est plus éloigné du système de fichiers de base qu’un instance dont l’altitude est « 100.123456 ». Toutefois, cette comparaison n’est significative que si les deux instances sont attachées au même volume.
FltGetBottomInstance ajoute une référence d’exécution au pointeur d’instance opaque retourné dans *Instance. Lorsque ce pointeur n’est plus nécessaire, l’appelant doit le libérer en appelant FltObjectDereference. Ainsi, chaque appel réussi à FltGetBottomInstance doit être mis en correspondance par un appel ultérieur à FltObjectDereference.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | fltkernel.h (inclure Fltkernel.h) |
Bibliothèque | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |