Passage d’opérations d’E/S dans la pile d’instances du pilote minifiltre
Quand la routine de rappel de préopération d’un pilote de minifiltre ou la routine de travail retourne une opération d’E/S au gestionnaire de filtres, le gestionnaire de filtres envoie l’opération aux pilotes de minifiltre sous le pilote de minifiltre actuel dans le pilote minifiltre instance pile et aux filtres hérités et au système de fichiers pour un traitement ultérieur.
La routine de rappel de préopération d’un pilote minifiltre retourne une opération d’E/S au gestionnaire de filtres pour un traitement ultérieur en retournant l’une des valeurs status suivantes :
FLT_PREOP_SUCCESS_NO_CALLBACK (tous les types d’opérations)
FLT_PREOP_SUCCESS_WITH_CALLBACK (tous les types d’opérations)
FLT_PREOP_SYNCHRONIZE (opérations d’E/S basées sur IRP uniquement)
Note Bien que FLT_PREOP_SYNCHRONIZE ne doivent être retournés que pour les opérations D’E/S basées sur IRP, vous pouvez retourner cette valeur status pour d’autres types d’opérations. S’il est retourné pour une opération d’E/S qui n’est pas une opération d’E/S basée sur IRP, le gestionnaire de filtres traite cette valeur de retour comme si elle était FLT_PREOP_SUCCESS_WITH_CALLBACK.
La routine de travail d’une opération qui a été suspendu dans une routine de rappel de préopération retourne une opération d’E/S au gestionnaire de filtres en transmettant l’une des valeurs status précédentes dans le paramètre CallbackStatus lorsqu’il appelle FltCompletePendedPreOperation pour reprendre le traitement de l’opération d’E/S pendante.
Cette section comprend :
Retour de FLT_PREOP_SUCCESS_WITH_CALLBACK