FltPerformSynchronousIo, fonction (fltkernel.h)
Un pilote minifilter 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 être NULL. L’appelant est chargé de libérer cette structure lorsqu’elle n’est plus nécessaire en appelant FltFreeCallbackData.
Valeur de retour
Aucun
Remarques
Un pilote minifilter appelle FltPerformSynchronousIo pour lancer une opération d’E/S synchrone.
Les pilotes minifilter ne peuvent lancer que des opérations d’E/S basées sur IRP. Ils ne peuvent pas lancer des 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 minifilter attachées sous l’instance de lancement (spécifiée dans le paramètre Instance à FltAllocateCallbackData) et au système de fichiers. Les pilotes Minifilter attachés au-dessus de l’instance spécifiée ne reçoivent pas l’opération d’E/S.
Les pilotes minifilter doivent utiliser FltPerformSynchronousIo uniquement dans les cas où les routines telles que les suivantes ne peuvent pas être utilisées :
Une fois FltPerformSynchronousIo retourné, l’appelant peut réémettre 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ée en appelant FltReuseCallbackData.
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 |