Share via


Erstellen und installieren Sie ein Paket

Pakete sind die Bausteine von Windows 10 IoT Core. Von Gerätetreibern bis hin zu Systemdateien muss jede Komponente für die Installation auf einem Gerät gepackt werden. Pakete sind die kleinsten wartbaren Einheiten auf dem Gerät.

Schritt 1: Richten Sie sich ein

Installieren der Tools

  1. Windows Assessment and Deployment Kit (Windows ADK)
  2. IoT Core ADK-Add-Ons

Einrichten der Umgebung

  • Starten IoTCorePShell.cmd (dieser startet in der Eingabeaufforderung mit erhöhten Rechten)
  • Erstellen Sie einen neuen Arbeitsbereich mit new-ws C:\MyWorkspace <oemname> <arch>

Um Ihr eigenes Image (FFU) zu erstellen, befolgen Sie die im Lab „Erstellen eines Basisimages“ im IoT-Herstellungsleitfaden beschriebenen Schritte.

Schritt 2: Erstellen Sie ein neues Paket

  1. Erstellen Sie eine Paketdefinitions-XML-Datei (.wm.xml-Datei) und geben Sie die Dateien und Registrierungsschlüssel an, die Sie hinzufügen möchten. Weitere Informationen finden Sie unter Universelles Windows-OEM-Paketschema.

  2. Erstellen Sie das Paket: buildpkg filename.wm.xml. Die .cab-Datei wird im Build-Verzeichnis erstellt <workspace>\Build\<arch>\pkgs.

Erstellen Sie ein Paket mit Dateien und Registrierungsschlüsseln

Nachfolgend finden Sie ein Beispiel für die Angabe von Dateien und Registrierungsschlüsseln.

<?xml version="1.0" encoding="utf-8"?>
<identity xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    name="SUBNAME" namespace="COMPNAME" owner="Contoso" legacyName="Contoso.COMPNAME.SUBNAME" 
    xmlns="urn:Microsoft.CompPlat/ManifestSchema.v1.00">
    <onecorePackageInfo
        targetPartition="MainOS"
        releaseType="Production"
        ownerType="OEM" />
    <regKeys>
        <regKey
            keyName="$(hklm.software)\Contoso\Test">
            <regValue name="StringValue" type="REG_SZ" value="Test string" />
            <regValue name="DWordValue" type="REG_DWORD" value="0x12AB34CD" />
            <regValue name="BinaryValue" type="REG_BINARY" value="12ABCDEF" />
        </regKey>
        <regKey
            keyName="$(hklm.software)\Contoso\EmptyKey" />
    </regKeys>
    <files>
        <file
            destinationDir="$(runtime.system32)"
            source="filename.txt" />
        <file
            destinationDir="$(runtime.bootDrive)\OEMInstall"
            source="filename2.txt"
            name="filename2.txt" />
    </files>
</identity>

Erstellen Sie ein Appx-Paket

Verwenden Sie Add-IoTAppxPackage, um die Datei .wm.xml für eine bestimmte AppX-Datei zu generieren. Dieses Tool erwartet die appx-Abhängigkeiten im Unterverzeichnis namens "dependencies" in dem Ordner, der die appx-Datei enthält.

Add-IoTAppxPackage HelloWorld.appx fga Appx.HelloWorld
(or) newappxpkg HelloWorld.appx fga Appx.HelloWorld
New-IoTCabPackage Appx.HelloWorld
(or) buildpkg Appx.HelloWorld

fga legt die appx als Vordergrund-Start-App fest, bgt legt die appx als Hintergrundaufgabe fest und none überspringt die Startkonfiguration. Informationen zu älteren Befehlszeilentools finden Sie unter newappxpkg.cmd

Siehe Appx.IoTCoreDefaultApp als Beispiel.

Wenn Sie mehrere Anwendungen installieren müssen, die mit demselben Zertifikat signiert sind, können Sie das Zertifikat zusammen mit einer App hinzufügen und für die verbleibenden Apps können Sie das Hinzufügen des Zertifikats mit dem Flag skipcert überspringen.

newappxpkg AnotherApp.appx none Appx.AnotherApp skipcert

Weitere Informationen

Erstellen eines Treiberpakets

Das Treiberpaket enthält die Verweise (InfSource) auf die Inf-Datei für den Treiber. Sie können die .wm.xml-Treiberdatei manuell erstellen oder Add-IoTDriverPackage verwenden, das Paket-XML basierend auf der INF-Eingabedatei generiert.

Add-IoTDriverPackage C:\Mydriver\GPIO.inf MyDriver.GPIO
(or) newdrvpkg C:\Mydriver\GPIO.inf MyDriver.GPIO
New-IoTCabPackage MyDriver.GPIO
(or) buildpkg MyDriver.GPIO

Verwenden Sie für das ältere Befehlszeilentool inf2cab.command, um die Paket-XML-Datei und auch die CAB-Datei direkt durch internen buildpkg.cmd Aufruf zu erstellen.

Hinweis

Windows IoT Core unterstützt nur Universal Inf.

Weitere Informationen

Schritt 3: Auf dem Gerät installieren


  • Verbinden Sie sich mit dem Gerät (mit SSH oder mit Powershell)
  • Kopieren Sie die <filename>.cab Datei auf das Gerät in ein Verzeichnis, beispielsweise C:\OemInstall
  • Initiieren Sie das Staging des Pakets mit applyupdate -stage C:\OemInstall\<filename>.cab. Beachten Sie, dass dieser Schritt für jedes Paket wiederholt wird, wenn Sie mehrere Pakete installieren müssen.
  • Committen Sie die Pakete mit applyupdate -commit.

Hinweis

Sie können das Cab auch mithilfe der Windows Update-> CAB-Installationsoption im Windows Device Portal installieren. Das Gerät wird in das aktualisierte Betriebssystem (Zahnräder) neu gestartet, um die Pakete zu installieren, und wird erneut zum Hauptbetriebssystem neu gestartet. Dieser Vorgang kann einige Minuten dauern.