Lab 1c: Hinzufügen von Dateien und Registrierungseinstellungen zu einem Image

Wir erstellen einige Testdateien und Registrierungsschlüssel für ein Windows IoT Core-Image und packen sie so, dass sie nach der Verteilung an Ihre Kundschaft gewartet werden können. Da Dateien und Registrierungsschlüssel, die Sie Ihrem Image hinzufügen, häufig nicht speziell für eine Architektur ausgelegt sind, empfiehlt es sich, ein gemeinsames Paket zu erstellen, das Sie über alle Ihre Gerätearchitekturen hinweg verwenden können.

Ziele

  • Erstellen eines Pakets, das Registrierungs- und Dateieinstellungen für Ihr Gerät enthält
  • Packen des Pakets mit den Registrierungs-/Dateieinstellungen, damit es in ein FFU-Image einbezogen werden kann
  • Ändern von IoT Addon Kit-Projektkonfigurationsdateien, sodass Ihr Registrierungs-/Dateieinstellungspaket eingeschlossen wird
  • Erstellen und Bereitstellen eines FFU-Images, das Ihr Registrierungs-/Dateieinstellungspaket enthält

Wir erstellen einige Testdateien und Registrierungsschlüssel für das Image und packen sie so, dass sie nach dem Eintreffen bei Ihrer Kundschaft gewartet werden können.

Wir fügen diese dem allgemeinen Featuremanifest („OEMCommonFM.xml“) hinzu, das in x86-, x64- und ARM-Builds verwendet wird.

Für dieses Lab starten wir ein neues Produkt, ProductB, damit wir später mithilfe der IoT-Beispiel-App die IP-Adresse unseres Geräts abrufen und überprüfen können, ob unsere Dateien und Registrierungsschlüssel immer noch vorhanden sind.

Voraussetzungen

Stellen Sie sicher, dass Sie zuvor ein Basisimage gemäß Erstellen eines Basisimages erstellt haben.

Die folgenden Tools müssen installiert sein, um diese Aktion abzuschließen:

  • Windows Assessment and Deployment Kit (Windows ADK)
  • IoT Core-PowerShell-Umgebung
  • Windows 10 IoT Core-Pakete
  • IoT Core ADK-Add-Ons
  • Ein Texteditor wie Editor oder VS Code

Erstellen Ihrer Testdateien

Erstellen Sie einige Beispieltextdateien mithilfe des Editors, und fügen Sie einen beliebigen Text hinzu, damit diese Dateien nicht leer sind. Für unser Beispiel haben wir zwei Dateien mit den Titeln TestFile1.txt und TestFile2.txt erstellt.

Erstellen eines Pakets für Testdateien

  1. Öffnen Sie die IoT Core-PowerShell-Umgebung: Führen Sie C:\MyWorkspace\IoTCorePShell.cmd als Administrator*in aus, und erstellen Sie ein Dateipaket mit Add-IoTFilePackage:

    # Array of files with destinationDir, Source and destinationFilename
    $myfiles = @(
        ("`$(runtime.system32)","C:\Temp\TestFile1.txt", ""),        
        ("`$(runtime.bootDrive)\OEMInstall","C:\Temp\TestFile2.txt", "TestFile2.txt")
        )
    Add-IoTFilePackage Files.Configs $myfiles
    

    Dadurch wird ein neuer Ordner unter C:\MyWorkspace\Common\Packages\Files.Configs erstellt.

    Dadurch wird auch der Datei C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml die Feature-ID FILES_CONFIGS hinzugefügt.

    Variablen wie $(runtime.system32) sind in C:\Program Files (x86)\Windows Kits\10\Tools\bin\i386\pkggen.cfg.xml definiert.

  2. Erstellen Sie ein Registrierungspaket mit Add-IoTRegistryPackage:

    # Array of files with destinationDir, Source and destinationFilename
    $myregkeys = @(
        ("`$(hklm.software)\`$(OEMNAME)\Test","StringValue", "REG_SZ", "Test string"),
        ("`$(hklm.software)\`$(OEMNAME)\Test","DWordValue", "REG_DWORD", "0x12AB34CD")
        )
    Add-IoTRegistryPackage Registry.Settings $myregkeys
    

    Dadurch wird ein neuer Ordner unter C:\MyWorkspace\Common\Packages\Registry.Settings erstellt.

    Dadurch wird auch der Datei C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml die Feature-ID REGISTRY_SETTINGS hinzugefügt.

  3. Erstellen Sie die Pakete mithilfe von New-IoTCabPackage:

    New-IoTCabPackage Files.Configs
    (or) buildpkg Files.Configs
    New-IoTCabPackage Registry.Settings
    (or) buildpkg Registry.Settings
    

    Das Paket wird erstellt und ist unter C:\MyWorkspace\Build\<arch>\pkgs verfügbar.

Erstellen eines neuen Produkts

  1. Erstellen Sie einen neuen Produktordner.

    Add-IoTProduct ProductB RPi2
    (or) newproduct ProductB RPi2
    

    Dabei werden Sie aufgefordert, SMBIOS-Werte einzugeben.

Aktualisieren der Konfigurationsdateien des Projekts

Aktualisieren Sie die Produkttestkonfiguration so mithilfe von Add-IoTProductFeature, dass die Features enthalten sind:

Add-IoTProductFeature ProductX Test FILES_CONFIGS -OEM
(or) addfid ProductX Test FILES_CONFIGS -OEM
Add-IoTProductFeature ProductX Test REGISTRY_SETTINGS -OEM
(or) addfid ProductX Test REGISTRY_SETTINGS -OEM

Erstellen und Testen des Images

Erstellen Sie das FFU-Image erneut, wie unter Erstellen eines Basisimages angegeben. Dazu müssen Sie nur den Befehl New-IoTFFUImage ausführen:

New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test 

Nachdem die FFU-Datei erstellt wurde, können Sie sie mit Flash auf Ihr Hardwaregerät übertragen, wie unter Erstellen eines Windows IoT Core-Images mit Flash angegeben.

Überprüfen der hinzugefügten Dateien und Registrierungsschlüssel

Führen Sie die folgenden Schritte aus, um sicherzustellen, dass die Dateien auf dem Gerät hinzugefügt wurden:

  1. Verbinden Sie Ihren Techniker-PC und das Gerät mit demselben Netzwerk.

    Um z. B. eine Verbindung über ein kabelgebundenes Netzwerk herzustellen, schließen Sie ein Ethernetkabel an. Um eine direkte Verbindung mit dem Gerät herzustellen, schließen Sie ein Netzwerkkabel direkt von Ihrem Techniker-PC an das Gerät an.

  2. Notieren Sie die IP-Adresse des Geräts in der Test-App. Beispiel: 10.100.0.100.

  3. Öffnen Sie auf dem Techniker-PC Explorer, und geben Sie die IP-Adresse des Geräts mit dem Präfix „\“ und dem Suffix „\c$“ ein:

    \\10.100.0.100\c$
    

Verwenden Sie den Gerätenamen, das Standardadministratorkonto und das Kennwort, um sich anzumelden. (Standard: minwinpc\Administrator / p@ssw0rd)

  1. Überprüfen Sie, ob die Dateien auf dem Gerät vorhanden sind. Suchen Sie im Beispiel nach:

    \\10.100.0.100\c$\Windows\system32\TestFile1.txt

    \\10.100.0.100\c$\OEMInstall\TestFile2.txt

Überprüfen der Registrierungsschlüssel

  1. Stellen Sie auf dem Techniker-PC eine Verbindung mit Ihrem Gerät über einen SSH-Client wie PuTTY her. Verwenden Sie beispielsweise die IP-Adresse und Port 22, um eine Verbindung mit dem Gerät herzustellen. Melden Sie sich dann mit dem Administratorkonto und dem Kennwort an. (Weitere Informationen dazu finden Sie unter SSH.)

  2. Fragen Sie über die Befehlszeile im SSH-Client den Registrierungsschlüssel vom System ab. In unserem Beispiel wurde dieser Befehl ausgeführt, um das Vorhandensein des Registrierungsschlüssels zu überprüfen:

    reg query HKLM\Software\Fabrikam\Test
    

    Der SSH-Client sollte Ihre Testwerte anzeigen.

    Alternativ können Sie Befehl ausführen im Windows-Geräteportal für Ihr verbundenes Gerät verwenden, um den Befehl reg query auszuführen.

    Ausführen des Befehls im Windows-Geräteportal

Im Ausgabefenster sollten Ihre Testwerte angezeigt werden.

Nächste Schritte

Lab 1d: Hinzufügen eines Bereitstellungspakets zu einem Image