Fonction FltPerformSynchronousIo (fltkernel.h)
Un pilote de minifiltre appelle FltPerformSynchronousIo pour lancer une opération d’E/S synchrone après avoir appelé FltAllocateCallbackData pour allouer une structure de données de rappel pour l’opération.
Syntaxe
VOID FLTAPI FltPerformSynchronousIo(
[in, out] PFLT_CALLBACK_DATA CallbackData
);
Paramètres
[in, out] CallbackData
Pointeur vers une structure de données de rappel (FLT_CALLBACK_DATA) allouée par un appel précédent à FltAllocateCallbackData. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL. L’appelant est chargé de libérer cette structure lorsqu’elle n’est plus nécessaire en appelant FltFreeCallbackData.
Valeur de retour
None
Remarques
Un pilote de minifiltre appelle FltPerformSynchronousIo pour lancer une opération d’E/S synchrone.
Les pilotes de minifiltre peuvent uniquement lancer des opérations d’E/S basées sur IRP. Ils ne peuvent pas lancer d’opérations de rappel rapides d’E/S ou de filtre de système de fichiers (FSFilter).
FltPerformSynchronousIo envoie l’opération d’E/S uniquement aux instances de pilote de minifiltre attachées sous le instance de lancement (spécifié dans le paramètre Instance à FltAllocateCallbackData) et au système de fichiers. Les pilotes de minifiltre attachés au-dessus du instance spécifiés ne reçoivent pas l’opération d’E/S.
Les pilotes de minifiltre doivent utiliser FltPerformSynchronousIo uniquement dans les cas où des routines telles que les suivantes ne peuvent pas être utilisées :
Une fois FltPerformSynchronousIo retourné, l’appelant peut rééditer l’opération d’E/S en appelant FltReissueSynchronousIo. L’appelant peut également libérer la structure des données de rappel (FLT_CALLBACK_DATA) en appelant FltFreeCallbackData ou en la préparant à être réutilisées en appelant FltReuseCallbackData.
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 |