Condividi tramite


FLT_PARAMETERS per l'unione IRP_MJ_MDL_READ_COMPLETE

Quando FLT_IO_PARAMETER_BLOCK viene utilizzato il membro dell'unione seguente FLT_PARAMETERS. MajorFunction è IRP_MJ_MDL_READ_COMPLETE.

Sintassi

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    PMDL MdlChain;
  } MdlReadComplete;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Membri

  • MdlReadComplete: struttura contenente i membri seguenti.

  • MdlChain: puntatore a una variabile che riceve un puntatore a una catena di uno o più elenchi di descrittori di memoria (MDL) che descrivono le pagine contenenti i dati da leggere dal file memorizzato nella cache.

Osservazioni:

IRP_MJ_MDL_READ_COMPLETE è un'operazione di I/O veloce. Fa la stessa cosa di IRP_MJ_READ + IRP_MN_COMPLETE_MDL ad eccezione della differenza seguente:

  • L'operazione basata su IRP configura la memorizzazione nella cache nel file se non è già memorizzata nella cache prima di eseguire il lavoro MDL.
  • L'operazione di I/O veloce ha esito negativo se il file non è già memorizzato nella cache.

La struttura FLT_PARAMETERS per le operazioni IRP_MJ_MDL_READ_COMPLETE contiene i parametri per un'operazione di I/O MdlReadComplete veloce. L'operazione è rappresentata da una struttura (FLT_CALLBACK_DATA), con i parametri dell'operazione nella struttura FLT_IO_PARAMETER_BLOCK a cui punta Iopb.

Se una richiesta di I/O veloce IRP_MJ_MDL_READ_COMPLETE ha esito negativo, l'autorità emittente dell'I/O determina come eseguire nuovamente la richiesta. Ad esempio, la richiesta potrebbe essere riemissione come operazione basata su IRP usando IRP_MJ_READ + IRP_MN_COMPLETE_MDL.

Requisiti

Tipo di requisito Requisito
Intestazione Fltkernel.h (include Fltkernel.h)

Vedi anche

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS