Unterstützen mehrerer Betriebssystemversionen
Treiberpakete unterstützen allgemein viele Versionen des Windows-Betriebssystems. Im Rahmen des Supports mehrerer Versionen des Betriebssystems muss sich das Treiberpaket unter Umständen auf verschiedenen Versionen des Betriebssystems unterschiedlich verhalten, um neue Funktionen zu nutzen oder neue Anforderungen der neuen Betriebssystemversion zu erfüllen. So kann es beispielsweise sein, dass sich ein Treiberpaket auf Betriebssystemen ab einer bestimmten Version anders verhalten soll, um die Anforderungen von Windows Drivers zu erfüllen. In den folgenden Abschnitten wird beschrieben, wie Sie sowohl in der INF-Datei des Treiberpakets als auch im Laufzeitverhalten der Binärdateien im Treiberpaket unterschiedliche Verhaltensweisen haben können.
INF-Support
TargetOSVersion Auszeichnungen auf INF-Modelle in der INF lassen die Möglichkeit zu, dass der INF-Autor unterschiedliche Installationsanweisungen und Einstellungen für verschiedene Versionen des Betriebssystems bereitstellt.
Weitere Informationen finden Sie unter Kombinieren von Plattformerweiterungen mit Betriebssystemversionen.
Laufzeitunterstützung
Wenn Sie versuchen, das Verhalten zur Runtime zu ändern, um mehrere Betriebssystemversionen zu unterstützen, empfiehlt es sich, wann immer möglich die Verfügbarkeit von Funktionen oder APIs zu prüfen, anstatt zu versuchen, zu überprüfen, ob der Code auf einer bestimmten Betriebssystemversion oder einer neueren Version ausgeführt wird. Wenn es beispielsweise eine API gibt, die Sie verwenden möchten, wenn sie verfügbar ist, können Sie versuchen, sie dynamisch zu finden, anstatt statisch mit ihr zu linken. Wenn es Ihnen gelingt, sie zu finden, können Sie sie verwenden. Wenn sie jedoch in Ihrer aktuellen Umgebung nicht vorhanden ist, können Sie auf ein alternatives Verhalten zurückgreifen.
Kernelmodus
Für den Kernel-Modus finden Sie unter Schreiben von Treibern für verschiedene Versionen von Windows weitere Informationen darüber, wie Sie mehrere Versionen von Windows mit einem einzigen Treiber unterstützen können.
Benutzermodus
Im Benutzermodus können Sie LoadLibraryEx zusammen mit GetProcAddress verwenden, um zu prüfen, ob eine bestimmte API, die Sie verwenden möchten, in Ihrer aktuellen Umgebung verfügbar ist und um einen Funktionszeiger zu erhalten, den Sie für den Aufruf dieser API verwenden können. Weitere Informationen finden Sie unter Dynamisches Linken zur Laufzeit und Verwenden von dynamischem Linken zur Laufzeit.