FltGetContexts, fonction (fltkernel.h)
La routine FltGetContexts récupère les contextes d’un pilote minifilter pour les objets liés à l’opération actuelle.
Syntaxe
VOID FLTAPI FltGetContexts(
PCFLT_RELATED_OBJECTS FltObjects,
FLT_CONTEXT_TYPE DesiredContexts,
PFLT_RELATED_CONTEXTS Contexts
);
Paramètres
FltObjects
[in] Pointeur vers une structure FLT_RELATED_OBJECTS contenant des pointeurs opaques pour les objets liés à l’opération actuelle. Pour plus d’informations sur ce paramètre, consultez la section Remarques.
DesiredContexts
[in] Identifie les types de contextes à récupérer. Ce paramètre peut être une OR au niveau du bit des valeurs suivantes.
Constant | Valeur |
---|---|
FLT_VOLUME_CONTEXT | 0x0001 |
FLT_INSTANCE_CONTEXT | 0x0002 |
FLT_FILE_CONTEXT | 0x0004 |
FLT_STREAM_CONTEXT | 0x0008 |
FLT_STREAMHANDLE_CONTEXT | 0x0010 |
FLT_TRANSACTION_CONTEXT | 0x0020 |
FLT_SECTION_CONTEXT (à partir de Windows 8) | 020040 |
FLT_ALL_CONTEXTS | OR au niveau du bit de toutes les valeurs de contexte |
Contexts
[out] Pointeur vers une structure FLT_RELATED_CONTEXTS allouée par l’appelant qui reçoit les contextes demandés. Ce paramètre est obligatoire et ne peut pas être défini sur NULL. fltMgr définit un membre de structure sur zéro pour :
- Contextes que l’appelant n’a pas demandé.
- Contextes demandés par l’appelant, mais FltMgr n’a pas pu trouver.
Valeur de retour
Aucun.
Remarques
Pour plus d’informations sur les contextes, consultez À propos des contextes minifilter.
Un pilote minifilter appelle FltGetContexts pour récupérer des pointeurs vers les contextes du pilote minifilter pour les objets d’une structure FLT_RELATED_OBJECTS.
Les types de routines de rappel de pilote minifilter suivants reçoivent un pointeur vers une structure de FLT_RELATED_OBJECTS en tant que paramètre d’entrée FltObjects :
- PFLT_PRE_OPERATION_CALLBACK
- PFLT_POST_OPERATION_CALLBACK
- PFLT_INSTANCE_SETUP_CALLBACK
- PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK
- PFLT_INSTANCE_TEARDOWN_CALLBACK
FltGetContexts incrémente le nombre de références sur chacun des contextes retournés dans la structure FLT_RELATED_CONTEXTS vers laquelle pointe le paramètre Contexts. Ainsi, pour chaque appel réussi à FltGetContexts, l’appelant doit soit :
- Appelez FltReleaseContexts pour la structure entière vers laquelle pointe le paramètre Contexts.
- Appelez FltReleaseContext pour chacun des contextes retournés dans la structure et définissez chaque champ de contexte retourné dans la structure sur zéro.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
d’en-tête | fltkernel.h (include Fltkernel.h) |
bibliothèque | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |
Voir aussi
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK