Partager via


Fonction FltReleaseContextsEx (fltkernel.h)

FltReleaseContextsEx libère chaque contexte dans une structure FLT_RELATED_CONTEXTS_EX donnée.

Syntaxe

VOID FLTAPI FltReleaseContextsEx(
  [in] SIZE_T                   ContextsSize,
  [in] PFLT_RELATED_CONTEXTS_EX Contexts
);

Paramètres

[in] ContextsSize

Taille, en octets, de la structure FLT_RELATED_CONTEXTS_EX pointée par Les contextes. Définissez sur sizeof(FLT_RELATED_CONTEXTS_EX).

[in] Contexts

Pointeur vers la structure FLT_RELATED_CONTEXTS_EX .

Valeur de retour

None

Remarques

Pour plus d’informations sur les contextes, consultez À propos des contextes de minifiltre.

FltReleaseContextsEx décrémente le nombre de références sur tous les contextes de la structure FLT_RELATED_CONTEXTS_EX et définit tous les membres de la structure sur NULL_CONTEXT.

Pour obtenir la structure FLT_RELATED_CONTEXTS_EX d’un pilote de minifiltre donné pour une demande d’E/S donnée, appelez FltGetContextsEx.

Pour plus d’informations sur le comptage des références de contexte, consultez Référencement de contextes.

Les appelants de FltReleaseContextsEx doivent être en cours d’exécution à 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 à 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 est en cours d’exécution au DISPATCH_LEVEL IRQL, un élément de travail est planifié pour libérer le contexte.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 8.
Plateforme cible Universal
En-tête fltkernel.h (inclure Fltkernel.h)
Bibliothèque FltMgr.lib
DLL Fltmgr.sys
IRQL Consultez la section Notes.

Voir aussi

FLT_CONTEXT_REGISTRATION

FLT_RELATED_CONTEXTS_EX

FltAllocateContext

FltGetContextsEx

FltReleaseContext