FLT_PARAMETERS pour l’union IRP_MJ_MDL_READ_COMPLETE
Le membre de l’union FLT_PARAMETERS suivant est utilisé lorsque FLT_IO_PARAMETER_BLOCK.MajorFunction est IRP_MJ_MDL_READ_COMPLETE.
Syntaxe
typedef union _FLT_PARAMETERS {
... ;
struct {
PMDL MdlChain;
} MdlReadComplete;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Membres
MdlReadComplete : Structure contenant les membres suivants.
MdlChain : Pointeur vers une variable qui reçoit un pointeur vers une chaîne d’une ou plusieurs listes de descripteurs de mémoire (MDL) qui décrivent les pages contenant les données devant être lues à partir du fichier mis en cache.
Notes
IRP_MJ_MDL_READ_COMPLETE est une opération d’E/S rapide. Elle fait la même chose que IRP_MJ_READ + IRP_MN_COMPLETE_MDL à l’exception de la différence suivante :
- L’opération basée sur IRP configure la mise en cache sur le fichier si celui-ci n’est pas déjà mis en cache avant de faire le travail MDL.
- L’opération Fast IO (opération d'E/S rapide ) échoue si le fichier n’est pas déjà mis en cache.
La structure FLT_PARAMETERS pour les opérations IRP_MJ_MDL_READ_COMPLETE contient les paramètres pour une opération rapide d’E/S MdlReadComplete. L’opération est représentée par une structure (FLT_CALLBACK_DATA), avec les paramètres de l’opération dans la structure FLT_IO_PARAMETER_BLOCK à laquelle Iopb pointe.
Si une demande rapide d’E/S IRP_MJ_MDL_READ_COMPLETE échoue, l’émetteur de l’E/S détermine comment réémettre la demande. Par exemple, la requête peut être rééditée en tant qu’opération basée sur IRP à l’aide de IRP_MJ_READ + IRP_MN_COMPLETE_MDL.
Spécifications
Type de condition requise | Exigence |
---|---|
En-tête | Fltkernel.h (inclure Fltkernel.h) |