Fonction FltGetVolumeContext (fltkernel.h)
La routine FltGetVolumeContext récupère un contexte qui a été défini pour un volume par un pilote minifilter donné.
Syntaxe
NTSTATUS FLTAPI FltGetVolumeContext(
[in] PFLT_FILTER Filter,
[in] PFLT_VOLUME Volume,
[out] PFLT_CONTEXT *Context
);
Paramètres
[in] Filter
Pointeur de filtre opaque pour l’appelant. Ce paramètre est obligatoire et ne peut pas être NULL.
[in] Volume
Pointeur opaque pour le volume dont le contexte est récupéré. Ce paramètre est obligatoire et ne peut pas être NULL.
[out] Context
Pointeur vers une variable allouée par l’appelant qui reçoit l’adresse du contexte demandé. Ce paramètre est obligatoire et ne peut pas être défini sur NULL.
Valeur retournée
FltGetVolumeContext retourne STATUS_SUCCESS lorsqu’il retourne correctement le contexte demandé. Sinon, elle retourne une valeur NTSTATUS appropriée, telle que la suivante :
Code de retour | Description |
---|---|
STATUS_NOT_FOUND | Aucun contexte correspondant n’a été trouvé sur ce fichier pour l’instant. Par conséquent, FltMgr a défini Context sur NULL_CONTEXT. Il s’agit d’un code d’erreur. |
Remarques
Pour plus d’informations sur les contextes, consultez À propos des contextes de minifiltre.
FltGetVolumeContext incrémente le nombre de références en fonction du contexte vers lequel pointe le paramètre Context . Lorsque ce pointeur de contexte n’est plus nécessaire, l’appelant doit décrémenter son nombre de références en appelant FltReleaseContext. Ainsi, chaque appel réussi à FltGetVolumeContext doit être mis en correspondance par un appel ultérieur à FltReleaseContext.
Pour définir un contexte pour un volume, appelez FltSetVolumeContext.
Pour allouer un nouveau contexte, appelez FltAllocateContext.
Pour supprimer un contexte de volume, appelez FltDeleteVolumeContext ou FltDeleteContext.
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 |