Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Thema werden Versionen von Kernel-Mode Driver Framework (KMDF), die entsprechenden Versionen des Windows-Betriebssystems und die änderungen aufgeführt, die in den einzelnen Versionen vorgenommen wurden.
Die folgende Tabelle zeigt den Versionsverlauf der KMDF-Bibliothek. Sie können die Seitenleiste "In diesem Artikel" auf der rechten Seite verwenden, um schnell zu einer bestimmten Version zu navigieren.
| KMDF-Version | Erste Veröffentlichung | Enthalten in | Treiber, die auf dieser KMDF-Version basieren, werden auf |
|---|---|---|---|
| 1.33 | Windows 11, version 21H2 WDK; WDK für Windows Server 2022 | Windows 11, Version 24H2; Windows 11, Version 23H2; Windows 11, Version 22H2; Windows 11, Version 21H2; Windows Server 2022 | Windows 11, Version 21H2 und höher; Windows Server 2022 und höher |
| 1.31 | Windows 10, version 2004 WDK | Windows 10, Version 2004 | Windows 10, Version 2004 und höher |
| 1.29 | Nicht veröffentlicht in WDK | Windows 10, Version 1903 | Windows 10, Version 1903 und höher |
| 1.27 | Windows 10, version 1809 WDK | Windows 10, Version 1809 | Windows 10, Version 1809 und höher |
| 1,25 | Windows 10, version 1803 WDK | Windows 10, Version 1803 | Windows 10, Version 1803 und höher |
| 1.23 | Windows 10, version 1709 WDK | Windows 10, Version 1709 | Windows 10, Version 1709 und höher |
| 1.21 | Windows 10, version 1703 WDK | Windows 10, Version 1703 | Windows 10, Version 1703 und höher |
| 1.19 | Windows 10, version 1607 WDK | Windows 10, Version 1607 | Windows 10, Version 1607, Windows Server 2016 und höher |
| 1.17 | Windows 10, version 1511 WDK | Windows 10, Version 1511 | Windows 10, Version 1511, Windows Server 2016 und höher |
| 1.15 | Windows 10 WDK | Windows 10, Version 1507 | Windows 10, Version 1507, Windows Server 2016 und höher |
| 1.13 | Windows 8.1 WDK | Windows 8.1 | Windows 8.1 und höher |
| 1.11 | Windows 8 WDK | Windows 8 | Windows Vista und höher |
| 1.9 | Windows 7 WDK | Windows 7 | Windows XP und höher |
| 1.7 | Windows Server 2008 WDK | Windows Vista mit Service Pack 1 (SP1); Windows Server 2008 | Windows 2000 und höher |
| 1.5 | Windows Vista WDK | Windows Vista | Windows 2000 und höher |
| 1.1 | Nur herunterladen | Nichts | Windows 2000 und höher |
| 1,0 | Nur herunterladen | Nichts | Windows XP und höher |
Sie können das Windows Driver Kit (WDK) mit Microsoft Visual Studio 2022 verwenden, um Treiber zu erstellen, die unter Windows 10 und höher ausgeführt werden.
Hilfe zum Ermitteln der zu verwendenden WDF-Version finden Sie unter Welche Frameworkversion sollte ich verwenden?.
Eine vollständige Liste der Rückrufe und Methoden sowie die Frameworks und Versionen, auf die sie angewendet werden, finden Sie in der Zusammenfassung der WDF-Rückrufe und -Methoden.
Informationen zu den neuen Features für KMDF-Treiber in Windows 10 finden Sie unter What's New for WDF Drivers.
Für jeden ABSCHNITT der KMDF-Version unten wird die Windows-Version, in der sie veröffentlicht wurde, in Klammern aufgeführt.
Neueste Version – KMDF 1.33 (Windows 11, Version 21H2; Windows Server 2022)
- Für Geräte, die SystemManagedIdleTimeout oder SystemManagedIdleTimeoutWithHint in der WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE-Aufzählung angeben, wenn das WdfDeviceStopIdle-Makro mit WaitForD0 auf FALSE gesetzt ist, falls das Gerät noch in D0 ist und der Leerlauftimeoutzeitraum noch nicht abgelaufen ist, gibt das Makro WdfDeviceStopIdle STATUS_SUCCESS zurück (in früheren Versionen führte dies zu einem Rückgabewert von STATUS_PENDING).
- WDF_POWER_FRAMEWORK_SETTINGS Struktur verfügt über zwei neue Member (PoFxDeviceFlags und DirectedPoFxEnabled).
KMDF 1.31 (Windows 10, Version 2004)
- Neue API WdfDeviceSetDeviceInterfaceStateEx hinzugefügt
- Verbesserte vorhandene API WdfDeviceGetSystemPowerAction
- Neue API WdfPdoInitRemovePowerDependencyOnParent hinzugefügt
- Einführung in das Framework zur gesteuerten Energieverwaltung
KMDF 1.29 (Windows 10, Version 1903)
Unverändert von Version 1.25.
KMDF 1.27 (Windows 10, Version 1809)
Unverändert von Version 1.25.
KMDF 1.25 (Windows 10, Version 1803)
KMDF 1.23 (Windows 10, Version 1709)
- Begleitfunktionen, die nur für die interne Verwendung hinzugefügt wurden. Weitere Informationen finden Sie unter Wdfcompanion.h.
KMDF 1.21 (Windows 10, Version 1703)
- WdfFileObjectGetInitiatorProcessId war zuvor UMDF-only, jetzt in KMDF verfügbar.
- WdfRequestGetRequestorProcessId war zuvor UMDF-only, jetzt in KMDF verfügbar.
- WdfObjectDereferenceActual: Der Dateiparametertyp wurde von PCHAR zu PCCH geändert.
- WdfObjectReferenceActual: Der Typ des Dateiparameters wurde von PCHAR in PCCH geändert.
- WDF-Registrierungswerte ObjectLeakDetectionLimit und ObjectsForLeakDetection zum Debuggen übermäßiger Objekterstellung hinzugefügt. Weitere Informationen finden Sie unter Registrierungswerte für das Debuggen von WDF-Treibern.
- Das SleepStudy-Softwaretool meldet die Anzahl der Energieverweise, über die ein KMDF-Treiber verfügt, die verhindern, dass das System in den Schlafmodus wechselt. Weitere Informationen finden Sie unter Modern Standby SleepStudy.
KMDF 1.19 (Windows 10, Version 1607)
- WdfDmaTransactionSetSingleTransferRequirement hinzugefügt
- Die Kennzeichnung WDF_DMA_ENABLER_CONFIG_REQUIRE_SINGLE_TRANSFER wurde in WDF_DMA_ENABLER_CONFIG_FLAGS hinzugefügt.
- Hinzugefügter Rückgabewert STATUS_WDF_TOO_MANY_TRANSFERS für WdfDmaTransactionInitialize und WdfDmaTransactionDmaCompleted
- Hinzugefügt wurden Ausgabemeldungen für eine einzelne Transferausgabe zu !wdfkd.wdfdmatransaction und !wdfkd.wdfdmaenabler.
- Weitere Informationen zu DMA für einzelne Übertragungen finden Sie unter Verwenden des DMA für einmalige Übertragungen.
KMDF 1.15 (Windows 10, Version 1507)
- Mit der neuen WdfDeviceOpenDevicemapKey-Methode kann ein Treiber auf Unterschlüssel und Werte unter HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAPzugreifen.
- WDF-Quellcode ist öffentlich über Windows Driver Frameworks verfügbar. Die privaten Symboldateien für WDF sind über den Microsoft Symbol Server verfügbar. Siehe auch Debuggen mit WDF-Quelle und -Video: Debuggen des Treibers mit WDF-Quellcode.
- Inflight Trace Recorder (IFR) ist jetzt verfügbar. Beachten Sie, dass dies vom Ereignisprotokollierer des Frameworks getrennt ist. Weitere Informationen finden Sie unter Inflight Trace Recorder (IFR) zur Aufzeichnung von Traces und Verwendung des Inflight Trace Recorders in KMDF- und UMDF-Treibern.
- Unterstützung für Unterbrechungen für GPIO-gestützte Geräte. Weitere Informationen finden Sie unter Erstellen eines Interrupt-Objekts.
KMDF 1.13 (Windows 8.1)
KMDF Version 1.13 fügt die folgende Funktionalität hinzu:
- Der CanWakeDevice-Member wurde zur WDF_INTERRUPT_CONFIG-Struktur hinzugefügt, um Interrupts zu unterstützen, die verwendet werden können, um ein Gerät aus einem energiearmen Dx-Zustand zurück in seinen vollständig eingeschalteten D0-Zustand zu versetzen. Weitere Informationen finden Sie unter Using an Interrupt to Wake a Device.
- Unterstützung für Zeitgeber mit hoher Auflösung. Weitere Informationen finden Sie unter Verwenden von Timern.
- Unterstützung für Timer, die das System nicht reaktivieren, wenn sie ablaufen, falls sich das System in einem schwachen Stromzustand befindet. Weitere Informationen finden Sie unter Verwenden von Timern.
- Die folgenden KMDF/UMDF-Methoden, die unter "Zugriff auf das Unified Device Property Model" beschrieben werden:
Informationen zu UMDF-Versionen finden Sie im UMDF-Versionsverlauf.
KMDF 1.11 (Windows 8)
Version 1.11 fügt die folgenden Funktionen hinzu:
Unterstützung für Unterbrechungen auf passiver Ebene
Funktionsleistungszustände für mehrere Komponenten innerhalb eines einzelnen Geräts
Die folgenden Methoden:
- WdfDeviceConfigureWdmIrpDispatchCallback
- WdfDeviceInitSetReleaseHardwareOrderOnFailure
- WdfDeviceInitSetRemoveLockOptions
- WdfDeviceWdmDispatchIrp
- WdfDmaEnablerConfigureSystemProfile
- WdfDmaTransactionAllocateResources
- WdfDmaTransactionCancel
- WdfDmaTransactionFreeResources
- WdfDmaTransactionGetTransferInfo
- WdfDmaTransactionInitializeUsingOffset
- WdfDmaTransactionSetChannelConfigurationCallback
- WdfDmaTransactionSetDeviceAddressOffset
- WdfDmaTransactionSetImmediateExecution
- WdfDmaTransactionSetTransferCompleteCallback
- WdfDmaTransactionWdmGetTransferContext
- WdfInterruptQueueWorkItemForIsr
- WdfInterruptReportActive
- WdfInterruptReportInactive
- WdfInterruptTryToAcquireLock
- WdfIoQueueStopAndPurge
- WdfIoQueueStopAndPurgeSynchronously
- WdfIoTargetPurge
- WdfUsbTargetDeviceCreateIsochUrb
- WdfUsbTargetDeviceCreateUrb
- WdfUsbTargetDeviceCreateWithParameters
- WdfUsbTargetDeviceQueryUsbCapability
EvtDeviceUsageNotificationEx hinzugefügt.
Die IdleTimeoutType- und ExcludeD3Cold-Mitglieder wurden zu WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS hinzugefügt.
Das Mitglied ReportInactiveOnPowerDown wurde zu WDF_INTERRUPT_CONFIG hinzugefügt.
WdfIoTargetPurged-Wert zu WDF_IO_TARGET_STATE hinzugefügt.
WdfSpecialFileBoot-Wert zu WDF_SPECIAL_FILE_TYPE hinzugefügt.
DbgWaitForSignalTimeoutInSec zu Registrierungswerten für Debugging Framework-basierte Treiber hinzugefügt.
InstallWdf-, MultiComp- und SingleComp-Beispiele hinzugefügt.
KMDF 1.9 (Windows 7)
Version 1.9 fügt die folgenden Funktionen hinzu:
Garantierter Vorwärtsfortschritt für E/A-Warteschlangen
Unterstützung für das Umverteilen von E/A-Anforderungen aus der E/A-Warteschlange eines untergeordneten Geräts in die E/A-Warteschlange eines übergeordneten Geräts
Möglichkeit zum Angeben der Synchronisierung auf Warteschlangenebene für einzelne Warteschlangenobjekte.
Die folgenden Methoden:
Das Member "NumberOfPresentedRequests " wurde der WDF_IO_QUEUE_CONFIG Struktur hinzugefügt, sodass Treiber die Anzahl der E/A-Anforderungen einschränken können, die das Framework von einer parallelen E/A-Warteschlange an den Treiber übermittelt.
Das WdfFileObjectCanBeOptional-Flag wurde der WDF_FILEOBJECT_CLASS-Struktur hinzugefügt.
Das TolerableDelay-Element wurde der WDF_TIMER_CONFIG Struktur hinzugefügt.
WdfDefaultIdleInWorkingState und WdfDefaultWakeFromSleepState-Registrierungswerte hinzugefügt.
KMDF 1.7 (Windows Vista mit Service Pack 1; Windows Server 2008)
Die WdfDeviceEnqueueRequest-Methode kann bei IRQL<=DISPATCH_LEVEL aufgerufen werden.
Die WdfWorkItemEnqueue-Methode kann aufgerufen werden, wenn sich die angegebene Arbeitsaufgabe bereits in der Arbeitsaufgabenwarteschlange befindet.
Die Ereignisrückruffunktion "EvtDeviceArmWakeFromSxWithReason" wurde hinzugefügt.
Die Mitglieder ArmForWakeIfChildrenAreArmedForWake und IndicateChildWakeOnParentWake wurden der Struktur WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS hinzugefügt.
KMDF 1.5 (Windows Vista)
Das DriverPoolTag-Mitglied wurde zu WDF_DRIVER_CONFIG hinzugefügt.
KMDF 1.1 (nicht in einer Windows-Version veröffentlicht)
- Die folgenden Methoden:
KMDF 1.0 (nicht in einer Windows-Version veröffentlicht)
Erste Veröffentlichung