Freigeben über


Beispiel zum Erstellen von Rückrufobjekten

Warnung

UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 für neuere Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden.

Die archivierten UMDF 1-Beispiele finden Sie im Windows 11, Version 22H2 – Mai 2022 Treiberbeispiele Update.

Weitere Informationen finden Sie unter Erste Schritte mit UMDF.

Das folgende Codebeispiel zeigt, wie ein Treiber ein Geräterückrufobjekt in der Implementierung seiner IDriverEntry::OnDeviceAdd-Methode erstellt und dann einen Zeiger an die Geräterückrufschnittstelle in seinem Aufruf an die IWDFDriver::CreateDevice-Methode übergibt, um das Gerät zu erstellen.

   HRESULT CMyDriver::OnDeviceAdd(
              IWDFDriver*           pDriver,
              IWDFDeviceInitialize* pDeviceInit
              ) {
      IUnknown *pDeviceCallback = NULL;
      ...
      HRESULT hr;
      // Create callback object
      hr = CMyDevice::CreateInstance( &pDeviceCallback,
                                      pDeviceInit,
                                      completionPort );
      ...
      // Create WDF device
      hr = pDriver->CreateDevice( pDeviceInit, 
                                  pDeviceCallback,
                                  &pIWDFDevice );
      ...
   }