Memeriksa Bendera di Objek Perangkat

Untuk setiap IRP yang meminta operasi I/O ke/dari media yang dapat dilepas, driver perangkat media yang dapat dilepas harus menentukan apakah DO_VERIFY_VOLUME sudah diatur dalam DeviceObject-Flags-nya>. Jika nilai ini diatur, driver harus melakukan hal berikut:

  • Untuk permintaan IRP_MJ_READ, IRP_MJ_WRITE, dan IRP_MJ_DEVICE_CONTROL , periksa apakah SL_OVERRIDE_VERIFY_VOLUME diatur dalam anggota Bendera struktur IO_STACK_LOCATION driver. Jika ya, lanjutkan operasi yang diminta.

    Permintaan kontrol perangkat yang mengembalikan informasi tentang struktur logis media yang mendasar telah SL_OVERRIDE_VERIFY_VOLUME diatur di anggota Bendera lokasi tumpukan I/O saat IFS memasang atau memasang kembali volume media yang dapat dilepas.

  • Jika tidak, driver harus menolak untuk melakukan permintaan I/O untuk drive, perangkat, atau partisi yang sesuai saat DO_VERIFY_VOLUME diatur dalam DeviceObject-Flags-nya>. Driver media yang dapat dilepas harus gagal mengirim IRP ke perangkat yang sesuai sampai FSD menghapus DO_VERIFY_VOLUME di DeviceObject-Flags> driver media yang dapat dilepas.

Jika driver perangkat media yang dapat dilepas tidak gagal saat DO_VERIFY_VOLUME diatur dan SL_OVERRIDE_VERIFY_VOLUME tidak diatur untuk permintaan transfer sebelumnya, sistem file tidak dapat mempertahankan integritas data file yang di-cache atau menyebabkan pengguna diminta untuk memasang kembali media yang menyimpan file terbuka.