Mengaitkan Contoh Antarmuka Panggilan Balik
Peringatan
UMDF 2 adalah versi terbaru UMDF dan pengganti UMDF 1. Semua driver UMDF baru harus ditulis menggunakan UMDF 2. Tidak ada fitur baru yang ditambahkan ke UMDF 1 dan ada dukungan terbatas untuk UMDF 1 pada versi Windows 10 yang lebih baru. Driver Universal Windows harus menggunakan UMDF 2.
Sampel UMDF 1 yang diarsipkan dapat ditemukan di Windows 11, versi 22H2 - Pembaruan Sampel Driver Mei 2022.
Untuk informasi selengkapnya, lihat Memulai UMDF.
Contoh kode berikut menunjukkan bagaimana driver menerapkan metode create-instance yang digunakan driver untuk membuat objek panggilan balik perangkat. Driver mengalokasikan konteks panggilan balik dan mengaitkan IUnknown yang disediakan dengan satu atau beberapa antarmuka panggilan balik. Kerangka kerja kemudian dapat menggunakan QueryInterface untuk menemukan antarmuka panggilan balik yang didukung oleh driver.
static HRESULT CreateInstance(
IUnknown **ppUnknown,
IWDFDeviceInitialize *pDeviceInit,
HANDLE CompletionPort
) {
...
// Allocate the callback context
CMyDevice *pMyDevice = new CMyDevice();
...
HRESULT hr;
// Discover the callback interface
hr = pMyDevice->QueryInterface(
__uuidof(IUnknown),
(void **) ppUnknown
);
...
return hr;
}