FltReuseCallbackData, fonction (fltkernel.h)
La FltReuseCallbackData routine réinitialise une structure de données de rappel afin qu’elle puisse être réutilisée.
Syntaxe
VOID FLTAPI FltReuseCallbackData(
[in, out] PFLT_CALLBACK_DATA CallbackData
);
Paramètres
[in, out] CallbackData
Pointeur vers la structure des données de rappel (FLT_CALLBACK_DATA) à réutiliser. Cette structure doit avoir été allouée par un appel précédent à FltAllocateCallbackData. Ce paramètre est obligatoire et ne peut pas être NULL.
Valeur de retour
Aucun
Remarques
FltReuseCallbackData réinitialise une structure de données de rappel (FLT_CALLBACK_DATA) afin qu’elle puisse être utilisée dans une nouvelle opération d’E/S. FltReuseCallbackData ne modifie pas le champ TargetInstance ou le champ TargetFileObject du bloc de paramètres d’E/S de la structure de rappel.
La routine FltReuseCallbackData libère toute chaîne MDL associée à l’objet CallbackData fourni. Un pointeur vers une chaîne MDL associée à un objet FLT_CALLBACK_DATA n’est pas valide après un appel à FltReuseCallbackData pour cet objet.
L’utilisation de FltReuseCallbackData pour réutiliser une structure de données de rappel est plus rapide que la libération de la structure et l’allocation d’une nouvelle structure.
Un pilote minifilter doit utiliser FltReuseCallbackData uniquement sur une structure de données de rappel que le pilote minifilter précédemment alloué avec FltAllocateCallbackData et utilisé dans un appel à FltPerformSynchronousIo ou FltPerformAsynchronousIo.
Si la structure de données de rappel a été utilisée pour les E/S asynchrones, le pilote minifilter ne doit pas appeler FltReuseCallbackData jusqu’à ce que le CallbackRoutine spécifié dans l’appel à FltPerformAsynchronousIo est appelé.
En particulier, un pilote minifilter ne doit pas utiliser cette routine pour les structures de données de rappel non allouées par le pilote minifilter lui-même.
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 |