Freigeben über


Arbeiten mit Erweiterungs-INF-Dateien im Partner Center

Sie können im Windows Hardware Dev Center Labels für Ihre Erweiterungs-INF-Dateien erstellen, sodass Sie diese wie andere Übermittlungen freigeben und veröffentlichen können. Dieser Artikel beschreibt den Prozess des Packens, Sendens und Veröffentlichens dieser Pakete. Weitere Informationen darüber, wie Erweiterungs-INFs erstellt und installiert werden, finden Sie unter Verwenden einer Erweiterungs-INF-Datei.

Voraussetzungen für das Veröffentlichen von Erweiterungs-INFs in Windows Update

Um Erweiterungs-INFs für Windows Update zu veröffentlichen, müssen Sie die Kontrollkästchen für die automatische Treiberbereitstellung für Ihr Label aktivieren. Der Grund dafür, dass Erweiterungs-INFs nicht optional veröffentlicht werden können, liegt darin, dass sie im Geräte-Manager nicht aufgelistet werden, damit Anwender*innen eine „Treiber aktualisieren“-Aktion einleiten können. Um diese Kontrollkästchen zu sehen, müssen Sie sich zunächst für Treiber-Flighting anmelden.

Hinweis

Damit Windows Update Erweiterungs-INFs anbieten kann, muss auf allen Systemen mindestens die RS3 January 3, 2018—KB4056892 (10.0.16299.192)ausgeführt werden.

Einreichen und Veröffentlichen von Erweiterungs-INFs

Dieser Abschnitt beschreibt, wie Sie ein INF-Paket senden und veröffentlichen. In den hervorgehobenen Punkten und den FAQ finden Sie Informationen zu allgemeinen Fehlern und häufig gestellten Fragen.

Wichtig

Microsoft empfiehlt, immer eine separate Übermittlung für jede Ihrer Erweiterungs-INFs zu erstellen und eine separate Übermittlung, die nur Ihre Basistreiberübermittlung enthält. Wenn Sie Ihren Basistreiber und Ihre Erweiterungs-INFs in einer einzigen Übermittlung veröffentlichen, treten folgende Probleme auf:

  • Alle Labels werden vom Partner Center als „Erweiterungstreiber“ eingestuft und bewertet. Um Elemente zu finden, die Erweiterungen sind, geben Sie @IsExtensionDriver:"True" in das Suchfeld des Dev Centers ein.
  • Nach der Veröffentlichung auf Windows Update sind die Benutzer*innen möglicherweise gezwungen, Ihre Treiberpakete mehrfach herunterzuladen: Einmal, wenn der Basistreiber installiert wird, und ein weiteres Mal für jede anwendbare Erweiterung, die PnP erkennt.

Erstellen eines Pakets für die Übermittlung

Basistreiberpaket

  1. Starten Sie wie gewohnt einen Hardware Lab Kit (HLK)-Testlauf mit Ihrem Basistreiber und den Erweiterungs-INFs. Die HLK-Ergebnisse werden für alle Schritte der Paketerstellung verwendet.

    ein Image, das die von einem HLK-Testlauf ausgegebenen Dateien zeigt.

  2. Entfernen Sie die Erweiterungs-INF-Vorlagen aus Ihrem Drivers-Ordner und fügen Sie nur die Basistreiberdateien wieder in Ihr HLK-Paket ein.

    Ein Bild, das die Basistreiberdateien zeigt.

  3. Erstellen und signieren Sie dieses HLKx-Paket, um Ihr Basistreiberpaket zu erstellen.

    Hinweis

    Basistreiberpakete müssen immer rückwärtskompatibel mit bestehenden Erweiterungen sein.

Erweiterungs-INF-Paket

  1. Verwenden Sie dieselben HLK-Ergebnisse aus dem Basistreiberpaket HLK-Testlauf und wählen Sie Paket>Treiber ersetzen

    Ein Bild, das die Option „Treiber ersetzen“ in der HLK zeigt.

  2. Fügen Sie die Erweiterungs-INF mit allen referenzierten Binärdateien in den Ordner des Treibers ein. Wenn Sie mehrere Erweiterungs-INFs haben, fügen Sie nur eine Datei hinzu.

  3. Erstellen und signieren Sie dieses neue HLK-Paket. Dieses Paket ist Ihr Erweiterungs-INF-Paket.

  4. Wiederholen Sie diesen Vorgang für jede Ihrer Erweiterungs-INFs und entfernen Sie dabei jedes Mal den Inhalt des Treiberordners.

Übermittlung Ihrer Pakete an das Partner Center

Erstellen Sie für jedes der erstellten Pakete eine neue Übermittlung und laden Sie sie in das Hardware Dev Center hoch. Anschließend erstellen Sie ein Label für die Pakete, die Sie freigeben oder veröffentlichen möchten. Weitere Informationen finden Sie unter Erstellen einer neuen Hardware-Übermittlung und Verwalten der Treiber-Distribution mit Labels.

ExtensionID

Die ExtensionID ist eine von Ihnen generierte GUID, die für die Identifizierung der Treiberherkunft und die Versionsverwaltung verwendet wird. Sie beschreibt ein Geräteteil oder eine Teileserie und wird automatisch auf die SellerID registriert, die sie übermittelt hat. Der Besitzer dieser SellerID ist dafür verantwortlich, die Verwendung und Zuordnung der ExtensionID zu überwachen, ähnlich wie bei der CHID-Verwaltung.

Wenn Sie zum Beispiel eine ExtensionID für ein neues Systemelement erstellen:

  • Das Eigentum an der ExtensionID wird Ihrer SellerID zugewiesen.
  • Jedes Systemprojekt Ihrer Organisation, das das Element oder die Elementserie verwendet, hat die gleiche ExtensionID.
  • Die ExtensionID bleibt während der gesamten Lebensdauer des Elements unverändert.

Hinweis

  • Wenn Sie eine ExtensionID verwenden, die nicht mit Ihrer SellerID verknüpft ist, lehnt das Partner Center Ihre Übermittlung ab und informiert Sie, dass die ExtensionID bereits einer anderen Organisation gehört:
  • Für ein bestimmtes Gerät wird nur eine Erweiterungs-INF für jeden eindeutigen ExtensionID-Wert installiert. Wenn ein Gerät über mehrere Erweiterungs-INFs verfügt, benötigen Sie daher für jede einzelne eine neue ExtensionID. Das bedeutet auch, dass, wenn zwei Erweiterungs-INFs auf dasselbe Gerät mit unterschiedlichen ExtensionIDs abzielen, beide Erweiterungs-INFs angewendet werden. Weitere Informationen finden Sie unter Verwenden einer Erweiterungs-INF-Datei.

Wenn Ihre Organisation Projekte und Übermittlungen für eine andere Organisation verwaltet, beachten Sie Folgendes:

  • Das Eigentum an der ExtensionID wird der SellerID zugewiesen, die die Übermittlung abschließt.
  • Wenn Sie die SellerID einer anderen Organisation verwenden, können Sie deren ExtensionID nutzen.
  • Wenn Sie die SellerID Ihrer Organisation verwenden möchten, müssen Sie Ihre eigene ExtensionID für das Element oder die Elementserie erstellen.

Generieren Sie eine neue ExtensionID für die erste Version einer Erweiterungs-INF (d. h. das erste Mal, wenn Sie eine Erweiterungs-INF anpassen und übermitteln), auch dann, wenn Sie zum ersten Mal ein neues freigegebenes Label für ein neues Gerät erhalten. Visual Studio enthält in Tools > GUID erstellen ein Dienstprogramm zum Erstellen von GUIDs, obwohl jedes Tool zum Generieren von Online-GUIDs funktionieren sollte, wenn es dem folgenden Registrierungsformat entspricht.

Ein Bild zeigt die Seite zum Erstellen einer GUID in Visual Studio.

Wenn Sie eine Erweiterungs-INF aktualisieren, die bereits veröffentlicht wurde, behalten Sie die ExtensionID bei und erhöhen die Version und/oder das Datum, die in der Direktive DriverVer angegeben sind. Das Treiberdatum und die Treiberversion werden (in dieser Reihenfolge) verwendet, um zwischen mehreren Erweiterungs-INFs mit der gleichen ExtensionID zu unterscheiden.

Veröffentlichen einer Erweiterungs-INF

Um die Übermittlung Ihrer Erweiterungs-INF zu veröffentlichen, folgen Sie den Schritten unter Veröffentlichen eines Treibers in Windows Update. Vergewissern Sie sich, dass beide Optionen für die automatische Treiberwerbung aktiviert sind und dass Ihre Erweiterungs-INFs ein bestimmtes Ziel haben.

Ein Bild, das die automatischen Treiber-Promotions zeigt.

Wenn Sie diese Optionen nicht sehen, müssen Sie sich möglicherweise für das Treiber-Flighting anmelden.

Alle Erweiterungs-INFs durchlaufen den Treiber-Flighting-Prozess, damit sie über Windows Update verteilt werden können. Nach erfolgreichem Flighting sind die Dateien für den Retail-Systeme verfügbar. Wenn Sie dem Windows Insider Program beitreten, erhalten Sie in dieser Phase schnelleren Zugriff auf die Treiber.

Ziel der Erweiterungs-INF und Unterschiede im Ranking

Da Erweiterungen Anpassungen für bestimmte Geräte sind, müssen sie immer gezielt eingesetzt werden. Befolgen Sie diese Richtlinien, wenn Sie mit Erweiterungs-INF Targeting arbeiten:

  • Erweiterungs-INF-Dateien müssen, wenn möglich, vierteilige Hardware-IDs (HWIDs) haben.
  • Zusätzlich zu den vierteiligen HWIDs können CHIDs auf dem Label der Erweiterungs-INF hinzugefügt werden.
  • Für Elemente und Elementserien, die keine vierteilige HWID haben, ist die Angabe von CHIDs im Label erforderlich.

Diese Zielinformationen sind wichtig, um Ihre Erweiterungs-INF während der Distribution durch Windows Update (WU) korrekt auszuwerten. Es gibt zwei Phasen, in denen WU die Treiber bewertet:

  1. Eine Anwendbarkeitsphase, in der WU eine Liste von Treibern erstellt, die für ein bestimmtes System geeignet sind.
  2. Eine Rangfolgephase, in der Windows PnP und WU bestimmen, welcher Treiber aus der Liste installiert werden soll.

Allgemein gibt es ein paar wichtige Grundsätze für die Einstufung und das Ziel von Erweiterungs-INFs:

  • Die ExtensionID der Erweiterungs-INF wird nicht für die Anwendbarkeit verwendet – nur für die Identifizierung der Herkunft und der Versionsverwaltung.

  • WU bietet (und PnP installiert) für jede anwendbare Erweiterungs-ID den am höchsten eingestuften Erweiterungstreiber an.

  • Erweiterungstreiber werden nach Datum und Version sortiert, die in der Direktive DriverVer enthalten sind. Diese wird sowohl von WU als auch von PnP verwendet. Weitere Informationen finden Sie unter INF Version Abschnitt und INF DriverVer Direktive.

  • PnP und WU berücksichtigen den Feature oder Identifier Score (d. h. zweiteilig oder vierteilig) bei Erweiterungstreibern nicht.

  • CHID-Informationen werden bei der Einstufung von Erweiterungstreibern in WU nicht verwendet (d.h . Sie können andere Erweiterungstreiber nicht durch CHID-Targeting „blockieren“).

  • Informationen über die Auswahl von Treibern und deren Ziele innerhalb des Windows-Betriebssystems finden Sie unter Verwendung einer Erweiterungs-INF-Datei

Häufig gestellte Fragen

Treiberentwicklung

Müssen wir die ExtensionID jedes Mal ändern, wenn wir unseren Basistreiber aktualisieren?

Nein, Sie sollten die gleiche ExtensionID beibehalten, wenn Sie Ihren Basistreiber aktualisieren. Die ExtensionID wird für den Versionsvergleich und die Identifizierung der Treiberhistorie verwendet. Sie sollte sich innerhalb einer Treiberhistorie nicht ändern.

Fertigung

Können wir eine von IHV gelieferte Erweiterungs-INF mit ihrer ExtensionID für Herstellungszwecke verwenden?

Nein Wenn Sie planen, den Serviceaspekt der Erweiterung selbst zu übernehmen, müssen Sie Ihre eigene Erweiterungs-INF und ExtensionID für die Produktion verwenden.

Treiberupdates

Müssen wir jedes Mal eine aktualisierte Erweiterungs-INF an Windows Update veröffentlichen, wenn ein Basistreiberpaket aktualisiert und veröffentlicht wird?

Nein, und das müssen Sie auch nicht. Das Basistreiberpaket muss immer abwärtskompatibel mit bestehenden Erweiterungen sein.

Was passiert, wenn ein aktualisierter Basistreiber veröffentlicht und auf das System eines/einer Benutzer*in angewendet wird?

Wenn ein Basistreiber-Update angewendet wird, wird die aktuell installierte Erweiterungs-INF ausgewertet und gegebenenfalls angewendet. Wenn keine Erweiterungs-INFs installiert sind, lädt Windows Update die neueste anwendbare Version herunter.

Müssen wir eine aktualisierte Erweiterungs-INF oder ExtensionID veröffentlichen, wenn wir unser Betriebssystem auf die neueste Version aktualisieren?

Nein, die bestehende ExtensionID und Erweiterungs-INF funktionieren weiterhin.

Können zwei Systeme dieselbe Erweiterungs-INF verwenden, wenn ihre Anpassungen identisch sind?

Ja. Wenn mehrere Systeme die gleichen Einstellungen verwenden oder wenn Sie die Einstellungen für eine größere Anzahl von Geräten anpassen möchten, reicht eine Erweiterungs-INF aus. Fügen Sie die entsprechenden vierteiligen Hardware-IDs zur Erweiterungs-INF hinzu. Weitere Informationen finden Sie unter Verwenden einer Erweiterungs-INF-Datei.

Hardware Dev Center

Windows-Treiber