Встроенный режим
Внедренный режим поддерживается в Windows IoT Базовая и Windows IoT Корпоративная. Встроенный режим обеспечивает следующее:
- Фоновые приложения (подробнее)
- Использование функции lowLevelDevice
- Использование возможности systemManagement
Внедренный режим всегда включен в Windows IoT Core. В Windows IoT Enterprise необходимо включить внедренный режим, выполнив приведенные ниже действия.
Фоновые приложения
Фоновые приложения создаются с помощью шаблона Фоновое приложение (IoT) в Visual Studio. Дополнительные сведения о создании фоновых приложений.
Фоновые приложения выполняются без остановки и без ограничений ресурсов. Кроме того, если фоновое приложение по какой-либо причине останавливается и включен внедренный режим, система перезапустит фоновое приложение.
Хотя система автоматически перезапускает фоновые приложения, необходимо включить функции блокировки системы, чтобы предотвратить остановку или вмешательство пользователей в работу фоновых приложений.
Возможности устройства lowLevel и lowLevelDevice
Функция устройства lowLevel предоставляет доступ к низкоуровневым аппаратным интерфейсам, таким как GPIO, SPI и I2C.
Функция lowLevelDevices позволяет приложениям получать доступ к пользовательским устройствам при соблюдении ряда дополнительных требований. Эту возможность не следует путать с возможностью lowLevel устройства, которая обеспечивает доступ к устройствам GPIO, I2C, SPI и PWM.
Дополнительные сведения см. в разделе Объявления возможностей приложений .
Возможность systemManagment
При включении возможностей systemManagment для приложения разблокируется следующий набор API:
- Windows.System.ProcessLauncher
- Windows.System.TimeZoneSettings
- Windows.System.ShutdownManager
- Windows.Globalization.Language.TrySetInputMethodLanguageTag
Отладка фоновых приложений
Если выполняется отладка на устройстве, не работающем под управлением Windows IoT Базовая, и отображается одно из следующих сообщений об ошибке, необходимо убедиться, что на устройстве включен allowEmbeddedMode и что служба внедренного режима запущена:
- Нет доступных конечных точек из сопоставителя конечных точек.
- Эта программа блокируется групповой политикой. За дополнительными сведениями обратитесь к своему системному администратору.
Изменение режима
Чтобы включить внедренный режим, необходимо создать пакет подготовки в конструкторе образов и конфигураций (ICD), который задает значение AllowEmbeddedMode=1. Чтобы установить ICD, необходимо скачать и установить Windows ADK для Windows 10.
При установке ADK выберите Конструктор образов и конфигураций (ICD)
После завершения установки запустите конструктор образов и конфигураций Windows (WICD).
Щелкните Расширенная подготовка. Присвойте проекту имя AllowEmbeddedMode и нажмите кнопку Далее.
Выберите Общие для всех выпусков Windows и Далее.
Нажмите кнопку Готово.
В поле поиска введите EmbeddedMode и щелкните AllowEmbeddedMode.
В центральной области задайте для параметра AllowEmbeddedMode значение Да.
Щелкните Export Provisioning Package (Экспорт > пакета подготовки).
Нажмите кнопку "Далее".
Нажмите кнопку "Далее".
Нажмите кнопку "Далее".
Щелкните Построить.
Установка внедренного режима . PPKG в Windows IoT Корпоративная дважды щелкните . PPKG.
Нажмите кнопку Да, добавить. Нажмите кнопку Да в диалоговом окне LUA, если оно появится, и нажмите кнопку Да, добавить его в диалоговом окне, показанном ниже.
Настройка автоматического запуска фонового приложения
Чтобы настроить автоматический запуск фонового приложения, необходимо следовать инструкциям по созданию SD-карты MinnowBoardMax и копированию
D:\windows\system32\iotstartup.exe
(где D: — это SD-карта).Чтобы получить список установленных фоновых приложений, выполните указанные ниже действия.
C:\> iotstartup list BackgroundApplication1
Выходные данные должны содержать полное имя каждого установленного фонового приложения, которое будет выглядеть следующим образом:
Headless : BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpvee
Чтобы настроить это приложение для запуска при загрузке, выполните указанные ниже действия.
C:\> iotstartup add headless BackgroundApplication1
Если фоновое приложение успешно добавлено в список запуска, вы увидите следующее:
Added Headless: BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpveeplication1
Перезапустите устройство с внедренным режимом.
После перезапуска устройства фоновое приложение запустится автоматически. Запуск службы в режиме внедрения, которая управляет фоновыми приложениями, может занять несколько минут. Служба внедренного режима будет отслеживать фоновые приложения в списке запуска и убедиться, что они будут перезапущены в случае остановки. Если фоновое приложение останавливается несколько раз в течение короткого периода времени, оно больше не будет перезапущено.
Чтобы удалить фоновое приложение из списка запуска, введите следующее:
C:\> iotstartup remove headless BackgroundApplication1
Если фоновое приложение удалено из списка запуска, выходные данные будут выглядеть следующим образом:
Removed headless: BackgroundApplication1-uwp_1.0.0.0_x86__cqewk5knvpvee