Fungsi WdfDeviceCreateDeviceInterface (wdfdevice.h)
[Berlaku untuk KMDF dan UMDF]
Metode WdfDeviceCreateDeviceInterface membuat antarmuka perangkat untuk perangkat tertentu.
Sintaks
NTSTATUS WdfDeviceCreateDeviceInterface(
[in] WDFDEVICE Device,
[in] const GUID *InterfaceClassGUID,
[in, optional] PCUNICODE_STRING ReferenceString
);
Parameter
[in] Device
Handel ke objek perangkat kerangka kerja.
[in] InterfaceClassGUID
Pointer ke GUID yang mengidentifikasi kelas antarmuka perangkat.
[in, optional] ReferenceString
Penunjuk ke struktur UNICODE_STRING yang menjelaskan string referensi untuk antarmuka perangkat. String tidak boleh berisi karakter pemisah jalur ("/" atau "\"). Parameter ini bersifat opsional dan dapat berupa NULL. Untuk informasi selengkapnya, lihat bagian Keterangan berikut ini.
Mengembalikan nilai
WdfDeviceCreateDeviceInterface mengembalikan STATUS_SUCCESS jika operasi berhasil.
Untuk daftar nilai pengembalian lain yang dapat dikembalikan oleh WdfDeviceCreateDeviceInterface , lihat Kesalahan Pembuatan Objek Kerangka Kerja.
Metode ini mungkin mengembalikan nilai NTSTATUS lainnya.
Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.
Keterangan
Driver dapat memanggil WdfDeviceCreateDeviceInterface dari EVT_WDF_DRIVER_DEVICE_ADD, atau setelah perangkat dimulai.
Jika driver memanggil fungsi ini dari fungsi panggilan balik EVT_WDF_DRIVER_DEVICE_ADD , antarmuka secara otomatis diaktifkan ketika perangkat dimulai dan dinonaktifkan saat perangkat berhenti. Untuk mencegah pengaktifan otomatis, driver dapat memanggil WdfDeviceSetDeviceInterfaceStateEx dengan parameter IsInterfaceEnabled diatur ke FALSE.
Jika driver memanggil fungsi ini setelah perangkat dimulai, antarmuka tetap dinonaktifkan. Driver dapat memanggil WdfDeviceSetDeviceInterfaceState sebagaimana merujuknya.
Driver dapat menggunakan parameter ReferenceString untuk membedakan instans yang berbeda dari satu antarmuka. Dengan kata lain, jika driver memanggil WdfDeviceCreateDeviceInterface dua kali untuk kelas antarmuka perangkat yang sama, driver dapat menentukan parameter ReferenceString yang berbeda setiap kali. Saat instans antarmuka dibuka, manajer I/O meneruskan string referensi instans ke driver. String referensi ditambahkan ke komponen jalur nama instans antarmuka. Driver kemudian dapat menggunakan string referensi untuk menentukan instans kelas antarmuka perangkat mana yang sedang dibuka.
Untuk informasi selengkapnya tentang antarmuka perangkat dan metode WdfDeviceCreateDeviceInterface , lihat Menggunakan Antarmuka Perangkat.
Contoh
Contoh berikut mendaftarkan kelas antarmuka port COM untuk perangkat.
NTSTATUS status;
status = WdfDeviceCreateDeviceInterface(
Device,
(LPGUID) &GUID_DEVINTERFACE_COMPORT,
NULL
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Versi UMDF minimum | 2.0 |
Header | wdfdevice.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |
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