Share via


FLT_PARAMETERS para IRP_MJ_MDL_READ unión

El siguiente componente de unión se usa cuando se IRP_MJ_MDL_READ el campo MajorFunction de la estructura FLT_IO_PARAMETER_BLOCK de la operación.

Sintaxis

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    LARGE_INTEGER           FileOffset;
    ULONG POINTER_ALIGNMENT Length;
    ULONG POINTER_ALIGNMENT Key;
    PMDL                    *MdlChain;
  } MdlRead;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Miembros

  • MdlRead: estructura que contiene los miembros siguientes.

  • FileOffset: inicio de byte dentro del archivo almacenado en caché.

  • Longitud: longitud, en bytes, de los datos que se van a leer del archivo almacenado en caché.

  • Clave: valor de clave asociado a un bloqueo de intervalo de bytes en el archivo de destino. Si el intervalo que se va a leer se superpone o es un subrango de un intervalo bloqueado exclusivamente dentro del archivo, este parámetro debe ser la clave para ese bloqueo exclusivo. El bloqueo exclusivo debe ser mantenido por el proceso primario del subproceso que realiza la llamada; de lo contrario, se omite este parámetro.

  • MdlChain: puntero a una variable que recibe un puntero a una cadena de una o varias listas de descriptores de memoria (MDL) que describen las páginas que contienen los datos que se van a leer.

Comentarios

La estructura FLT_PARAMETERS para las operaciones de IRP_MJ_MDL_READ contiene los parámetros de una operación MdlRead de E/S rápida representada por una estructura de datos de devolución de llamada (FLT_CALLBACK_DATA). Se encuentra en una estructura FLT_IO_PARAMETER_BLOCK.

Si se produce un error en una solicitud de E/S rápida IRP_MJ_MDL_READ, el emisor de la E/S determina cómo volver a emitir la solicitud. Es posible que un minifiltro no siempre obtenga una IRP_MJ_MDL_READ basada en IRP. Por ejemplo, la solicitud IRP se podría volver a emitir como IRP_MJ_READ/IRP_MN_MDL.

IRP_MJ_MDL_READ es una operación de E/S rápida.

Requisitos

Tipo de requisito Requisito
Encabezado Fltkernel.h (incluya Fltkernel.h)

Consulte también

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS