嵌入模式
嵌入模式是一种 Win32 服务。 在 Windows 中,只有当用户、应用程序或其他服务启动它时,它才会启动。 当嵌入模式服务启动时,它将作为 LocalSystem 与其他服务一起在 svchos.exe 的共享进程中运行。 Windows IoT 企业版上支持嵌入模式。
嵌入模式确保:
- 后台应用程序
- 使用 lowLevelDevice 功能
- 使用 systemManagement 功能
启用嵌入模式
若要启用嵌入模式,请在映像和配置设计器 (ICD)(设置 AllowEmbeddedMode=1)中创建预配程序包。 若要安装 ICD,你需要下载并安装适用于 Windows 10 的 Windows ADK。
安装 ADK 时,选择“映像和配置设计器 (ICD)”
安装完成后,运行“Windows 映像和配置设计器(WICD)”。
单击“高级预配”。 将项目命名为“AllowEmbeddedMode”,然后单击“下一步”。
选择“所有 Windows 版本”的常见版本,然后选择“下一步”。
单击“完成” 。
在搜索框中键入“EmbeddedMode”,然后单击“AllowEmbeddedMode”。
在中心窗格中,将“AllowEmbeddedMode”的值设置为“是”
依次单击“导出”>“预配程序包”
单击“下一步”。
单击 “下一步” 。
单击“下一步”。
单击“生成”。
若要在 Windows IoT 企业版上安装嵌入模式“.PPKG”,请双击“.PPKG”。
单击“是的,添加它”。
单击 LUA 对话框(如果出现)上的“是”,然后单击如下所示对话框上的“是的,添加它”。
后台应用程序
后台应用程序无需停止且没有资源限制即可运行。 如果后台应用程序因某种原因而停止,同时嵌入模式获得了启用,则系统会重启后台应用程序。
虽然系统将自动重启后台应用程序,但必须启用系统锁定功能,以防止用户停止或干扰后台应用程序的操作。
有关运行后台应用程序的详细信息,请参阅后台任务
lowLevel 设备功能与 lowLevelDevice 功能
lowLevel 设备功能提供对低级硬件接口(例如 GPIO、SPI 和 I2C)的访问权限。
当满足额外的要求时,lowLevelDevices 功能允许应用访问自定义设备。 不应将此功能与 lowLevel 设备功能混淆,后者允许访问 GPIO、I2C、SPI 和 PWM 设备。
有关详细信息,请参阅应用功能声明。
systemManagement 功能
为应用程序启用 systemManagement 功能时,会解锁以下 API:
- Windows.System.ProcessLauncher
- Windows.System.TimeZoneSettings
- Windows.System.ShutdownManager
- Windows.Globalization.Language.TrySetInputMethodLanguageTag
调试后台应用程序
如果你在设备上进行调试时看到以下任一错误消息,则需确保该设备上已启用“AllowEmbeddedMode”且嵌入模式服务处于运行状态:
- 端点映射程序中未提供更多端点。
- 此程序由组策略阻止。 有关详细信息,请与系统管理员联系。