Создание и установка пакета
Пакеты являются стандартными блоками Windows 10 IoT Базовая. От драйверов устройств до системных файлов каждый компонент необходимо упаковать для установки на устройстве. Пакеты — это наименьшие единицы обслуживания на устройстве.
Шаг 1. Настройка
Установка инструментов
- Комплект средств оценки и развертывания Windows (Windows ADK)
- Надстройки ADK Для Интернета вещей Core
Настройка среды
- Launch
IoTCorePShell.cmd
( этот запуск запускается в командной строке с повышенными привилегиями ) - Создание рабочей области с помощью
new-ws C:\MyWorkspace <oemname> <arch>
Чтобы создать собственный образ (FFU), выполните действия, описанные в лаборатории "Создание базового образа" в руководстве по производству Интернета вещей.
Шаг 2. Создание пакета
Создайте XML-файл определения пакета (wm.xml файл) и укажите файлы и ключи реестра, которые требуется добавить. Дополнительные сведения см. в разделе Схема пакета универсального изготовителя оборудования Windows.
Выполните сборку пакета:
buildpkg filename.wm.xml
. Файл .cab будет создан в каталоге<workspace>\Build\<arch>\pkgs
сборки .
Создание пакета с файлами и ключами реестра
Ниже приведен пример указания файлов и ключей реестра.
<?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>
Создание пакета Appx
Используйте Add-IoTAppxPackage , чтобы создать wm.xml-файл для данного appx-файла. Это средство ожидает зависимости appx в подкаталоге с именем dependencies в папке, содержащей файл appx.
Add-IoTAppxPackage HelloWorld.appx fga Appx.HelloWorld
(or) newappxpkg HelloWorld.appx fga Appx.HelloWorld
New-IoTCabPackage Appx.HelloWorld
(or) buildpkg Appx.HelloWorld
fga
Задает appx в качестве начального приложения переднего плана, bgt
задает appx в качестве фоновой задачи и none
пропускает настройку запуска.
Сведения о более старой программе командной строки см. в разделе newappxpkg.cmd.
Пример см. в разделе Appx.IoTCoreDefaultApp .
Если необходимо установить несколько приложений, подписанных одним и тем же сертификатом, можно добавить сертификат вместе с одним приложением, а для остальных приложений можно пропустить добавление сертификата с помощью флага skipcert.
newappxpkg AnotherApp.appx none Appx.AnotherApp skipcert
См. также раздел
Создание пакета драйверов
Пакет драйвера содержит ссылки (InfSource) на INF-файл драйвера. Вы можете создать wm.xml-файл драйвера вручную или использовать Add-IoTDriverPackage , который создает XML-файл пакета на основе входного INF-файла.
Add-IoTDriverPackage C:\Mydriver\GPIO.inf MyDriver.GPIO
(or) newdrvpkg C:\Mydriver\GPIO.inf MyDriver.GPIO
New-IoTCabPackage MyDriver.GPIO
(or) buildpkg MyDriver.GPIO
Для более старой программы командной строки используйте inf2cab.cmd , чтобы создать XML-файл пакета, а также выполнить сборку CAB-файла напрямую путем внутреннего вызова buildpkg.cmd
.
Примечание
Windows IoT Базовая поддерживает только universal Inf.
См. также раздел
Шаг 3. Установка на устройстве
- Подключение к устройству (с помощью SSH или PowerShell)
- Скопируйте файл на
<filename>.cab
устройство в каталог C:\OemInstall. - Инициируйте промежуточное хранение пакета с помощью
applyupdate -stage C:\OemInstall\<filename>.cab
. Обратите внимание, что этот шаг повторяется для каждого пакета при наличии нескольких пакетов для установки. - Зафиксируйте пакеты с помощью
applyupdate -commit
.
Примечание
Вы также можете установить cab с помощью клиентский компонент Центра обновления Windows > параметр установки CAB на портале устройств Windows. Устройство перезагрузится в ОС обновления (с шестеренками) для установки пакетов и перезагрузится снова, чтобы main ОС. Это может занять несколько минут.