Задание 1c. Добавление файлов и параметров реестра в образ

Мы создадим некоторые тестовые файлы и разделы реестра для образа Windows IoT Базовая и упаковаем их, чтобы их можно было обслуживать после их распространения среди ваших клиентов. Так как файлы и разделы реестра, добавляемые в образ, часто не относятся к архитектуре, рекомендуется создать общий пакет, который можно использовать во всех архитектурах устройств.

Целей

  • Создание пакета, содержащего параметры реестра и файла для устройства
  • Упаковка пакета параметров реестра или файла, чтобы его можно было включить в образ FFU
  • Изменение файлов конфигурации проекта комплекта надстроек Интернета вещей для включения пакета параметров реестра или файла
  • Создание и развертывание образа FFU, содержащего пакет параметров реестра или файла

Мы создадим некоторые тестовые файлы и разделы реестра для образа и снова упаковаем их, чтобы их можно было обслуживать после того, как они обращаются к вашим клиентам.

Мы добавим их в манифест общих функций (OEMCommonFM.xml), который используется в сборках x86, x64 и Arm.

В этом задании мы запустим новый продукт ProductB, чтобы позже мы могли использовать пример приложения Интернета вещей, чтобы получить IP-адрес устройства и убедиться, что файлы и ключи регистрации сделали его.

Необходимые условия

Убедитесь, что вы создали базовый образ из раздела Создание базового образа ранее.

Для выполнения этого действия вам потребуется установить следующие средства:

  • Оценка и развертывание Windows KiT (Windows ADK)
  • Среда PowerShell IoT Core
  • Пакеты Windows 10 IoT Базовая
  • IoT Core ADK Add-Ons
  • Текстовый редактор, например Блокнот или VS Code.

Создание тестовых файлов

Создайте несколько примеров текстовых файлов с помощью Блокнота и добавьте случайный текст, чтобы эти файлы не были пустыми. В нашем примере мы создали два файла с названиями TestFile1.txt и TestFile2.txt.

Создание пакета для тестовых файлов

  1. Откройте среду PowerShell IoT Core: запустите от C:\MyWorkspace\IoTCorePShell.cmd имени администратора и создайте пакет файлов с помощью 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
    

    При этом создается новая папка по адресу C:\MyWorkspace\Common\Packages\Files.Configs.

    При этом в файл также добавляется C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xmlFILES_CONFIGS FeatureID.

    Такие переменные, как $(runtime.system32) , определяются в C:\Program Files (x86)\Windows Kits\10\Tools\bin\i386\pkggen.cfg.xml.

  2. Создайте пакет реестра с помощью 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
    

    При этом создается новая папка по адресу C:\MyWorkspace\Common\Packages\Registry.Settings.

    Кроме того, в файл добавляется C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xmlREGISTRY_SETTINGS FeatureID.

  3. Выполните сборку пакетов с помощью New-IoTCabPackage:

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

    Пакет создан и доступен по адресу C:\MyWorkspace\Build\<arch>\pkgs.

Создание нового продукта

  1. Создайте папку продукта.

    Add-IoTProduct ProductB RPi2
    (or) newproduct ProductB RPi2
    

    Вам будет предложено ввести значения SMBIOS .

Обновление файлов конфигурации проекта

Обновите конфигурацию тестирования продукта, чтобы включить функции с помощью 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

Создание и тестирование образа

Создайте образ FFU еще раз, как указано в разделе Создание базового образа. Необходимо выполнить только команду New-IoTFFUImage :

New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test 

После сборки файла FFu его можно запустить на аппаратное устройство, как указано в разделе Flashing a Windows IoT Core image ( Flashing a Windows IoT Core image).

Проверка добавления файлов и разделов реестра

Чтобы убедиться, что файлы были добавлены на устройство, выполните следующие действия.

  1. Подключите компьютер технического специалиста и устройство к одной сети Ethernet.

    Например, чтобы подключиться по проводной сети, подключите кабель Ethernet. Чтобы подключиться непосредственно к устройству, подключите сетевой кабель непосредственно от компьютера технического специалиста к устройству.

  2. В тестовом приложении запишите IP-адрес устройства. Например, 10.100.0.100.

  3. На компьютере технического специалиста откройте проводник и введите IP-адрес устройства с префиксом \ и суффиксом \c$:

    \\10.100.0.100\c$
    

Используйте имя устройства, учетную запись администратора по умолчанию и пароль для входа. (Значение по умолчанию: minwinpc\Administrator / p@ssw0rd)

  1. Проверьте, существуют ли файлы на устройстве. В нашем примере найдите:

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

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

Проверка разделов реестра

  1. На компьютере технического специалиста подключите устройство с помощью клиента SSH, например PuTTY. Например, используйте IP-адрес и порт 22 для подключения к устройству. Затем войдите в систему, используя учетную запись администратора и пароль. (Дополнительные сведения см. в разделе SSH.

  2. В командной строке клиента SSH запросите в системе раздел реестра. В нашем примере эта команда была выполнена для проверка существования раздела реестра:

    reg query HKLM\Software\Fabrikam\Test
    

    Клиент SSH должен отобразить тестовые значения.

    Кроме того, для выполнения reg query команды можно использовать команду Выполнить на портале устройств Windows на удаленном устройстве.

    Выполнение команды на портале устройств Windows

В окне вывода должны отображаться тестовые значения.

Дальнейшие действия

Задание 1d. Добавление пакета подготовки в образ