Fonction FltReleaseContexts (fltkernel.h)
FltReleaseContexts libère chaque contexte dans une structure FLT_RELATED_CONTEXTS donnée.
Syntaxe
VOID FLTAPI FltReleaseContexts(
[in] PFLT_RELATED_CONTEXTS Contexts
);
Paramètres
[in] Contexts
Pointeur vers la structure FLT_RELATED_CONTEXTS .
Valeur de retour
None
Remarques
Pour plus d’informations sur les contextes, consultez À propos des contextes de minifiltre.
FltReleaseContexts décrémente le nombre de références sur tous les contextes de la structure FLT_RELATED_CONTEXTS et définit tous les membres de la structure sur NULL_CONTEXT.
Pour obtenir la structure FLT_RELATED_CONTEXTS d’un pilote minifilter donné pour une demande d’E/S donnée, appelez FltGetContexts.
Pour plus d’informations sur le comptage des références de contexte, consultez Référencement de contextes.
Les appelants de FltReleaseContexts doivent s’exécuter sur IRQL <= DISPATCH_LEVEL si tous les contextes ont été alloués à partir d’un pool non paginé. Si des contextes ont été alloués à partir d’un pool paginé, les appelants doivent s’exécuter sur IRQL <= APC_LEVEL.
Lorsque le nombre de références de chaque contexte atteint zéro, le contexte est libéré immédiatement si l’appelant s’exécute à IRQL <= APC_LEVEL. Si l’appelant s’exécute dans irQL DISPATCH_LEVEL, un élément de travail est planifié pour libérer le contexte.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | fltkernel.h (inclure Fltkernel.h) |
Bibliothèque | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | Consultez la section Notes. |