Freigeben über


Unterstützung mehrerer Betriebssystemversionen

Treiberpakete unterstützen in der Regel viele Versionen des Windows-Betriebssystems. Im Rahmen der Unterstützung mehrerer Versionen des Betriebssystems muss das Treiberpaket möglicherweise ein anderes Verhalten auf verschiedenen Versionen des Betriebssystems aufweisen, um neue Features zu nutzen oder neue Anforderungen der neuen Betriebssystemversion zu erfüllen. Beispielsweise kann ein Treiberpaket nach einer bestimmten Version ein anderes Verhalten auf Betriebssystemen aufweisen, um die Anforderungen von Windows-Treibern zu erfüllen. In den folgenden Abschnitten wird beschrieben, wie Sie unterschiedliche Verhaltensweisen sowohl in der INF-Datei des Treiberpakets als auch im Laufzeitverhalten von Binärdateien im Treiberpaket haben können.

INF-Unterstützung

TargetOSVersion-Dekorationen für INF-Modelle Abschnitte im INF ermöglichen es dem INF-Autor, unterschiedliche Installationsanweisungen und Einstellungen für verschiedene Versionen des Betriebssystems bereitzustellen.

Weitere Informationen finden Sie unter Kombinieren von Plattformerweiterungen mit Betriebssystemversionen .

Laufzeitunterstützung

Wenn Sie versuchen, das Verhalten zur Laufzeit so zu ändern, dass mehrere Betriebssystemversionen unterstützt werden, wird empfohlen, dass Sie nach Möglichkeit nach Feature- oder API-Verfügbarkeit suchen, anstatt zu überprüfen, ob der Code unter einer bestimmten Betriebssystemversion oder höher ausgeführt wird. Wenn Sie beispielsweise eine API verwenden möchten, wenn sie verfügbar ist, können Sie versuchen, sie dynamisch zu suchen, anstatt statisch zu verknüpfen. Wenn Sie es finden können, können Sie es verwenden. Wenn sie jedoch in Ihrer aktuellen ausgeführten Umgebung nicht vorhanden ist, können Sie auf ein alternatives Verhalten zurückgreifen.

Kernelmodus

Für den Kernelmodus finden Sie unter Schreiben von Treibern für verschiedene Versionen von Windows weitere Informationen zur Unterstützung mehrerer Windows-Versionen von einem einzelnen Treiber.

Benutzermodus

Im Benutzermodus können Sie LoadLibraryEx zusammen mit GetProcAddress verwenden, um zu überprüfen, ob eine bestimmte API, die Sie verwenden möchten, in Ihrer aktuellen ausgeführten Umgebung verfügbar ist, und um einen Funktionszeiger abzurufen, der verwendet werden soll, um diese API aufzurufen. Weitere Informationen finden Sie unter Dynamisches Verknüpfen von Laufzeiten und Verwenden dynamischer Laufzeitverknüpfungen .