Condividi tramite


Lab 1c: Aggiunta di file e impostazioni del Registro di sistema a un'immagine

Verranno creati alcuni file di test e le chiavi del Registro di sistema in un'immagine di Windows IoT Core e li creeremo in un pacchetto in modo che possano essere gestiti dopo la distribuzione ai clienti. Poiché i file e le chiavi del Registro di sistema aggiunti all'immagine spesso non sono specifici di un'architettura, è consigliabile creare un pacchetto comune che è possibile usare in tutte le architetture del dispositivo.

Obiettivi

  • Creare un pacchetto contenente le impostazioni del Registro di sistema e dei file per il dispositivo
  • Creare un pacchetto delle impostazioni del Registro di sistema/file in modo che possa essere incluso in un'immagine FFU
  • Modificare i file di configurazione del progetto IoT Addon Kit per includere il pacchetto di impostazioni del registro o del file
  • Compilare e distribuire un'immagine FFU che contiene il pacchetto delle impostazioni del registro o del file

Verranno creati alcuni file di test e le chiavi del Registro di sistema per l'immagine e li verranno nuovamente inseriti in un pacchetto in modo che possano essere gestiti dopo aver raggiunto i clienti.

Verranno aggiunti al manifesto delle funzionalità comune (OEMCommonFM.xml), usato nelle build x86, x64 e Arm.

Per questo lab verrà avviato un nuovo prodotto, ProductB, in modo che in seguito sia possibile usare l'app di esempio IoT per ottenere l'indirizzo IP del dispositivo e verificare che i file e le chiavi reg lo abbiano reso.

Prerequisiti

Assicurarsi di aver creato un'immagine di base in Creare un'immagine di base in precedenza.

Per eseguire questa azione, sono necessari gli strumenti seguenti:

  • Windows Assessment and Deployment KiT (Windows ADK)
  • Ambiente PowerShell di IoT Core
  • Pacchetti di Windows 10 IoT Core
  • Add-Ons IoT Core ADK
  • Editor di testo come Blocco note o VS Code.

Creare i file di test

Creare alcuni file di testo di esempio usando Blocco note e aggiungere testo casuale in modo che questi file non siano vuoti. Per questo esempio sono stati creati due file denominati TestFile1.txt e TestFile2.txt.

Compilare un pacchetto per i file di test

  1. Aprire l'ambiente PowerShell di IoT Core: eseguire C:\MyWorkspace\IoTCorePShell.cmd come amministratore e creare un pacchetto file usando 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
    

    Verrà creata una nuova cartella in C:\MyWorkspace\Common\Packages\Files.Configs.

    Viene inoltre aggiunto un FILES_CONFIGS FeatureID al C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml file.

    Le variabili come $(runtime.system32) sono definite in C:\Program Files (x86)\Windows Kits\10\Tools\bin\i386\pkggen.cfg.xml.

  2. Creare un pacchetto del Registro di sistema usando 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
    

    Verrà creata una nuova cartella in C:\MyWorkspace\Common\Packages\Registry.Settings.

    Viene inoltre aggiunto un REGISTRY_SETTINGS FeatureID al C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml file.

  3. Compilare i pacchetti usando New-IoTCabPackage:

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

    Il pacchetto viene compilato ed è disponibile in C:\MyWorkspace\Build\<arch>\pkgs.

Creare un nuovo prodotto

  1. Creare una nuova cartella del prodotto.

    Add-IoTProduct ProductB RPi2
    (or) newproduct ProductB RPi2
    

    Verrà richiesto di immettere i valori SMBIOS .

Aggiornare i file di configurazione del progetto

Aggiornare la configurazione del test del prodotto per includere le funzionalità usando Add-IoTProductFeature:

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

Compilare e testare l'immagine

Compilare di nuovo l'immagine FFU, come specificato in Creare un'immagine di base. È necessario eseguire solo il comando New-IoTFFUImage :

New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test 

Dopo aver compilato il file FFu, è possibile eseguire il flashing sul dispositivo hardware come specificato in Flashing a Windows IoT Core image (Flashing a Windows IoT Core image).

Verificare i file e le chiavi del Registro di sistema aggiunti

Per verificare che i file siano stati aggiunti nel dispositivo, eseguire le operazioni seguenti:

  1. Connettere sia il PC tecnico che il dispositivo alla stessa rete Ethernet.

    Ad esempio, per connettersi tramite una rete cablata, collegare un cavo Ethernet. Per connettersi direttamente al dispositivo, collegare un cavo di rete direttamente dal PC tecnico al dispositivo.

  2. Nell'app di test prendere nota dell'indirizzo IP del dispositivo. Ad esempio, 10.100.0.100.

  3. Nel PC tecnico aprire Esplora file e digitare l'indirizzo IP del dispositivo con un prefisso \ e il suffisso \c$:

    \\10.100.0.100\c$
    

Usare devicename, l'account amministratore predefinito e la password per accedere. Il valore predefinito è minwinpc\Administrator/p@ssw0rd)

  1. Controllare se i file esistono nel dispositivo. Per questo esempio, cercare:

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

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

Verificare le chiavi del Registro di sistema

  1. Nel PC tecnico connettere il dispositivo usando un client SSH, ad esempio PuTTY. Ad esempio, usare l'indirizzo IP e la porta 22 per connettersi al dispositivo. Accedere quindi usando l'account amministratore e la password. Per altre informazioni, vedere SSH.

  2. Dalla riga di comando nel client SSH eseguire una query sul sistema per la chiave del Registro di sistema. In questo esempio questo comando è stato eseguito per verificare l'esistenza della chiave del Registro di sistema:

    reg query HKLM\Software\Fabrikam\Test
    

    Il client SSH deve visualizzare i valori di test.

    In alternativa, è possibile usare il comando Esegui in Windows Device Portal per il dispositivo conncenceted per eseguire il reg query comando.

    Eseguire il comando in Windows Device Portal

La finestra di output dovrebbe visualizzare i valori di test.

Passaggi successivi

Lab 1d: Aggiungere un pacchetto di provisioning a un'immagine