Fungsi WdfUsbTargetDeviceWdmGetConfigurationHandle (wdfusb.h)
[Hanya berlaku untuk KMDF]
Metode WdfUsbTargetDeviceWdmGetConfigurationHandle mengembalikan handel jenis USBD_CONFIGURATION_HANDLE yang terkait dengan konfigurasi perangkat USB tertentu saat ini.
Sintaks
USBD_CONFIGURATION_HANDLE WdfUsbTargetDeviceWdmGetConfigurationHandle(
[in] WDFUSBDEVICE UsbDevice
);
Parameter
[in] UsbDevice
Handel ke objek perangkat USB yang diperoleh dari panggilan sebelumnya ke WdfUsbTargetDeviceCreateWithParameters.
Nilai kembali
Jika driver telah memilih konfigurasi untuk perangkat, WdfUsbTargetDeviceWdmGetConfigurationHandle mengembalikan handel perangkat yang USBD_CONFIGURATION_HANDLE ketik. Jika tidak, metode mengembalikan NULL.
Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.
Keterangan
Driver berbasis kerangka kerja perlu mendapatkan handel yang diketik USBD_CONFIGURATION_HANDLE hanya jika membuat URB yang berisi struktur _URB_SELECT_INTERFACE .
Driver dapat memanggil WdfUsbTargetDeviceWdmGetConfigurationHandle setelah disebut WdfUsbTargetDeviceSelectConfig. Handel USBD_CONFIGURATION_HANDLE-typed yang dikembalikan WdfUsbTargetDeviceWdmGetConfigurationHandle valid hingga driver memanggil WdfUsbTargetDeviceSelectConfig lagi atau objek perangkat USB dihapus. Jika driver menyediakan fungsi EvtCleanupCallback untuk objek perangkat USB, dan jika objek dihapus sebelum driver memanggil WdfUsbTargetDeviceSelectConfig lagi, handel valid hingga fungsi EvtCleanupCallback objek kembali.
Untuk informasi selengkapnya tentang metode WdfUsbTargetDeviceWdmGetConfigurationHandle dan target USB I/O, lihat Target I/O USB.
Contoh
Contoh kode berikut mendapatkan handel ke konfigurasi perangkat USB tertentu saat ini.
USBD_CONFIGURATION_HANDLE deviceConfigHdl;
deviceConfigHdl = WdfUsbTargetDeviceWdmGetConfigurationHandle(UsbDevice);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Header | wdfusb.h (termasuk Wdfusb.h) |
Pustaka | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | <=DISPATCH_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |