Bagikan melalui


FLT_PARAMETERS untuk serikat IRP_MJ_MDL_WRITE_COMPLETE

Anggota serikat FLT_PARAMETERS berikut digunakan saat FLT_IO_PARAMETER_BLOCK. MajorFunction IRP_MJ_MDL_WRITE_COMPLETE.

Sintaks

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    LARGE_INTEGER FileOffset;
    PMDL          MdlChain;
  } MdlWriteComplete;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Anggota

  • MdlWriteComplete: Struktur yang berisi anggota berikut.

  • FileOffset: Memulai byte dalam file yang di-cache.

  • MdlChain: Pointer ke variabel yang menerima pointer ke rantai satu atau beberapa daftar deskriptor memori (MDL) yang menjelaskan halaman yang berisi data yang akan ditulis ke file cache.

Keterangan

IRP_MJ_MDL_WRITE_COMPLETE adalah operasi I/O yang cepat. Ini melakukan hal yang sama seperti IRP_MJ_WRITE + IRP_MN_COMPLETE_MDL kecuali untuk perbedaan berikut:

  • Operasi berbasis IRP menyiapkan penembolokan pada file jika belum di-cache sebelum melakukan pekerjaan MDL.
  • Operasi Fast IO gagal jika file belum di-cache.

Struktur FLT_PARAMETERS untuk operasi IRP_MJ_MDL_WRITE_COMPLETE berisi parameter untuk operasi I/O MdlWriteComplete yang cepat. Operasi ini diwakili oleh struktur data panggilan balik (FLT_CALLBACK_DATA), dengan parameter operasi dalam struktur FLT_IO_PARAMETER_BLOCK yang ditunjuk Iopb.

Jika permintaan I/O IRP_MJ_MDL_WRITE_COMPLETE cepat gagal, penerbit I/O menentukan cara menerbitkan ulang permintaan. Misalnya, permintaan dapat diterbitkan kembali sebagai operasi berbasis IRP menggunakan IRP_MJ_WRITE + IRP_MN_COMPLETE_MDL.

Persyaratan

Jenis persyaratan Persyaratan
Header Fltkernel.h (termasuk Fltkernel.h)

Lihat juga

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS