Bagikan melalui


struktur WDF_FILEOBJECT_CONFIG (wdfdevice.h)

[Berlaku untuk KMDF dan UMDF]

Struktur WDF_FILEOBJECT_CONFIG berisi informasi konfigurasi objek file kerangka kerja driver.

Sintaks

typedef struct _WDF_FILEOBJECT_CONFIG {
  ULONG                      Size;
  PFN_WDF_DEVICE_FILE_CREATE EvtDeviceFileCreate;
  PFN_WDF_FILE_CLOSE         EvtFileClose;
  PFN_WDF_FILE_CLEANUP       EvtFileCleanup;
  WDF_TRI_STATE              AutoForwardCleanupClose;
  WDF_FILEOBJECT_CLASS       FileObjectClass;
} WDF_FILEOBJECT_CONFIG, *PWDF_FILEOBJECT_CONFIG;

Anggota

Size

Ukuran, dalam byte, dari struktur ini.

EvtDeviceFileCreate

Penunjuk ke fungsi panggilan balik EvtDeviceFileCreate driver, atau NULL.

EvtFileClose

Penunjuk ke fungsi panggilan balik EvtFileClose driver, atau NULL.

EvtFileCleanup

Penunjuk ke fungsi panggilan balik EvtFileCleanup driver, atau NULL.

AutoForwardCleanupClose

Nilai yang WDF_TRI_STATE ketik. Untuk informasi selengkapnya tentang anggota ini, lihat bagian Komentar berikut ini.

FileObjectClass

Nilai jenis WDF_FILEOBJECT_CLASS yang mengidentifikasi apakah driver memerlukan objek file kerangka kerja untuk mewakili setiap file yang dibuat atau dibuka oleh aplikasi atau driver lain. Selain itu, nilai ini menentukan di mana kerangka kerja dapat menyimpan handel objek.

Keterangan

Struktur WDF_FILEOBJECT_CONFIG digunakan sebagai input ke metode WdfDeviceInitSetFileObjectConfig .

WDF_FILEOBJECT_CONFIG harus diinisialisasi dengan memanggil WDF_FILEOBJECT_CONFIG_INIT.

Perilaku Kerangka Kerja untuk AutoForwardCleanupClose

Jika AutoForwardCleanupClose diatur ke WdfTrue, kerangka kerja melakukan hal berikut:
  • Kerangka kerja meneruskan permintaan pembuatan file ke driver berikutnya yang lebih rendah jika driver tidak menyediakan fungsi panggilan balik EvtDeviceFileCreate dan belum memanggil WdfDeviceConfigureRequestDispatching untuk mengatur antrean I/O untuk menerima permintaan pembuatan file. Kerangka kerja tidak meneruskan permintaan pembuatan file jika driver menyediakan fungsi panggilan balik atau antrean untuk menangani permintaan, sehingga driver harus meneruskan, menyelesaikan, atau membatalkan permintaan.
  • Kerangka kerja mengirimkan pembersihan file dan menutup permintaan ke driver berikutnya yang lebih rendah setelah memanggil fungsi panggilan balik EvtFileCleanup dan EvtFileClose driver.
Jika AutoForwardCleanupClose diatur ke WdfFalse, kerangka kerja tidak meneruskan pembuatan file, pembersihan, atau menutup permintaan. Sebaliknya, kerangka kerja menyelesaikan permintaan untuk driver.

Jika AutoForwardCleanupClose diatur ke WdfUseDefault, kerangka kerja menggunakan perilaku WdfTrue untuk driver filter dan perilaku WdfFalse untuk driver fungsi.

Perilaku Driver untuk AutoForwardCleanupClose

Target I/O lokal driver Anda harus selalu menerima jumlah permintaan I/O yang sama dengan jenis permintaan WdfRequestTypeCreate, WdfRequestTypeCleanup, dan WdfRequestTypeClose. Oleh karena itu, jika driver menyediakan fungsi panggilan balik EvtDeviceFileCreate atau antrean I/O yang menerima permintaan pembuatan file, Anda harus menggunakan aturan berikut:
  • Jika driver Anda menetapkan AutoForwardCleanupClose ke WdfTrue, driver harus meneruskan semua permintaan pembuatan file ke target I/O lokal. Anda harus mengikuti aturan ini karena kerangka kerja akan meneruskan semua pembersihan dan menutup permintaan ke target lokal, baik driver Anda menyediakan fungsi panggilan balik EvtFileCleanup dan EvtFileClose atau tidak.
  • Jika driver Anda menetapkan AutoForwardCleanupClose ke WdfFalse, driver tidak boleh meneruskan permintaan pembuatan file ke target I/O lokal. Anda harus mengikuti aturan ini karena kerangka kerja tidak akan meneruskan pembersihan dan menutup permintaan ke target lokal, baik driver Anda menyediakan fungsi panggilan balik EvtFileCleanup dan EvtFileClose atau tidak.
  • Jika driver Anda mengatur AutoForwardCleanupClose ke WdfDefault, driver harus mengikuti aturan untuk WdfTrue jika itu adalah driver filter. Driver harus mengikuti aturan untuk WdfFalse jika itu adalah driver fungsi.

Persyaratan

Persyaratan Nilai
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdfdevice.h (termasuk Wdf.h)