enumerasi WDF_REQUEST_SEND_OPTIONS_FLAGS (wdfrequest.h)
[Berlaku untuk KMDF dan UMDF]
Jenis enumerasi WDF_REQUEST_SEND_OPTIONS_FLAGS menentukan bendera yang digunakan dalam struktur WDF_REQUEST_SEND_OPTIONS driver.
Sintaks
typedef enum _WDF_REQUEST_SEND_OPTIONS_FLAGS {
WDF_REQUEST_SEND_OPTION_TIMEOUT = 0x00000001,
WDF_REQUEST_SEND_OPTION_SYNCHRONOUS = 0x00000002,
WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE = 0x00000004,
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET = 0x00000008,
WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT = 0x00010000,
WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE = 0x00020000
} WDF_REQUEST_SEND_OPTIONS_FLAGS;
Konstanta
WDF_REQUEST_SEND_OPTION_TIMEOUT Nilai: 0x00000001 Jika driver mengatur bendera ini, anggota Timeout dari struktur WDF_REQUEST_SEND_OPTIONS valid. |
WDF_REQUEST_SEND_OPTION_SYNCHRONOUS Nilai: 0x00000002 Jika driver mengatur bendera ini, kerangka kerja menangani permintaan I/O terkait secara sinkron. (Driver tidak harus mengatur bendera ini jika memanggil metode objek yang namanya berakhiran "Sinkron", seperti WdfIoTargetSendReadSynchronously.) |
WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE Nilai: 0x00000004 Jika driver menetapkan bendera ini, kerangka kerja mengirimkan permintaan I/O ke target I/O, terlepas dari status target I/O. Jika tidak diatur, kerangka kerja mengantre permintaan jika target dihentikan. Mengatur bendera ini memungkinkan driver untuk mengirim permintaan, seperti permintaan untuk mengatur ulang pipa USB, ke perangkat setelah driver memanggil WdfIoTargetStop. |
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET Nilai: 0x00000008 Jika driver mengatur bendera ini, driver mengirim permintaan secara asinkron dan tidak perlu diberi tahu ketika permintaan selesai atau dibatalkan. Kerangka kerja mengirimkan permintaan I/O ke target I/O, terlepas dari status target I/O. Driver tidak mengatur fungsi panggilan balik CompletionRoutine atau memanggil WdfRequestComplete untuk permintaan tersebut. Jika driver mengatur bendera ini, driver tidak dapat mengatur bendera lain. Untuk informasi selengkapnya tentang bendera ini, lihat bagian Keterangan berikut ini. |
WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT Nilai: 0x00010000 Bendera ini hanya berlaku untuk UMDF. Jika diatur, dan jika jenis permintaan I/O adalah WdfRequestTypeCreate, metode WdfRequestSend mencoba meneruskan tingkat peniruan klien ke target I/O driver. Metode WdfRequestSend mengembalikan kode kesalahan jika upaya peniruan gagal, kecuali driver juga mengatur bendera WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE . |
WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE Nilai: 0x00020000 Bendera ini hanya berlaku untuk UMDF. Jika diatur, kerangka kerja masih mengirim permintaan meskipun peniruan nama gagal. Anda hanya dapat menggunakan nilai ini dengan WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT. |
Keterangan
Driver yang mengatur bendera WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET biasanya tidak memformat permintaan I/O sebelum memanggil WdfRequestSend untuk mengirim permintaan ke target I/O. Bahkan, driver yang mengatur bendera ini tidak boleh memanggil salah satu metode WdfIoTargetFormatRequestForXxx sebelum memanggil WdfRequestSend. Driver hanya dapat menggunakan metode WdfRequestFormatRequestUsingCurrentType atau WdfRequestWdmFormatUsingStackLocation untuk memformat permintaan.
Driver Anda tidak dapat mengatur bendera WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET dalam situasi berikut:
- Driver membuat objek permintaan dengan memanggil WdfRequestCreate.
- Driver mengirim permintaan I/O ke target I/O jarak jauh dan driver menentukan bendera WdfIoTargetOpenByName ketika disebut WdfIoTargetOpen.
- Driver mengirim permintaan I/O ke target I/O jarak jauh, dan driver menentukan bendera WdfIoTargetOpenUseExistingDevice dan penunjuk TargetFileObject ketika disebut WdfIoTargetOpen.
- Jenis permintaan adalah WdfRequestTypeCreate dan driver belum mengatur bendera WdfFileObjectNotRequired . (Untuk informasi selengkapnya tentang situasi ini, lihat Objek File Kerangka Kerja.)
Persyaratan
Persyaratan | Nilai |
---|---|
Versi KMDF minimum | 1,0 |
Versi UMDF minimum | 2.0 |
Header | wdfrequest.h (termasuk Wdf.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk