Suchen und Zuordnen von Hardwareressourcen in UMDF 1.x-Treibern

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.

Wenn Sie UMDF-Version 2.0 oder höher verwenden, finden Sie weitere Informationen unter Suchen und Zuordnen von Hardwareressourcen.

Ein UMDF 1.x-Treiber empfängt Hardwareressourcen in seiner IPnpCallbackHardware2::OnPrepareHardware-Rückrufmethode . Der Treiber verwendet die IWDFCmResourceList-Schnittstelle , um die übersetzte Ressourcenliste zu überprüfen und speicherbezogene Register, E/A-Ports und Interrupts zu identifizieren.

Der Treiber durchläuft die Ressourcenliste, indem er IWDFCmResourceList::GetCount und IWDFCmResourceList::GetDescriptor aufruft.

Wenn der Treiber speicherbezogene Register empfängt, muss der Treiber IWDFDevice3::MapIoSpace aufrufen, um die Register zu zuordnen, bevor er darauf zugreifen kann. In der Regel ordnet ein Treiber seine Register in seiner IPnpCallbackHardware2::OnPrepareHardware-Methode zu. Der Treiber hebt die Registrierungen in seinem IPnpCallbackHardware2::OnReleaseHardware-Rückruf auf, indem er IWDFDevice3::UnmapIoSpace aufruft. Beachten Sie, dass die Zuordnung für E/A-Ports nicht erforderlich ist.

Ein Beispiel, das zeigt, wie ein Treiber Speicherzuordnungsressourcen findet und ordnet, finden Sie unter IWDFDevice3::MapIoSpace.