实验 1d:将网络和其他预配程序包设置添加到映像
使用预配程序包可对现有的 Windows IoT 核心版安装映像中应用自定义设置。 我们将说明需要执行哪些步骤来创建可应用于 Windows 10 IoT 核心版 FFU 映像的预配程序包。
注意
若要测试 WiFi,板需要支持 WiFi。 可以使用 WiFi 适配器/dongle 或者内置了 Wi-Fi 的板(例如 Raspberry Pi 3)。
对于本实验,我们将使用 ProductB,其中包含可显示网络状态的默认应用 (Bertha)。
先决条件
确保事先已根据将应用添加到映像中所述,创建了包含你的自定义应用的映像。
需要安装以下工具才能完成本部分:
- Windows 评估和部署工具包 (Windows ADK)
- Windows 配置设计器
- IoT 核心版 PowerShell 环境
- 一个文本编辑器,例如记事本或 VS Code
安装 Windows 配置设计器
我们将使用 Windows 配置设计器 (WCD) 为 IoT 核心版映像创建预配程序包。 在 Windows 配置设计器中可以创建预配程序包用于配置运行 Windows 10 IoT 核心版的设备。
Windows ADK 工具包随附了 Windows 配置设计器,应事先将它安装在技术人员电脑上。 如果没有,请运行 Windows ADK 工具包的安装,并确保在安装时选中“配置设计器”选项。
为预配程序包创建 WCD 项目
若要为设备创建预配程序包,需要在 Windows 配置设计器中创建一个项目。 创建此项目后,可以指定要包含在 FFU 映像中的配置自定义项。
在 IoT 核心版映像电脑(技术人员电脑)上,运行“Windows 映像和配置设计器”。
单击“文件>新建项目”创建新项目。 对于本示例,我们创建了一个名为 TestProvPackage 的项目。
选择“预配程序包”,然后单击“下一步”。
在“选择要查看和配置的设置”页上,选择“Windows 10 IoT 核心版”。 单击“下一步”。
在“导入预配程序包(可选)”页上,将输入字段留空并单击“完成”。
添加示例设置:
a. 展开 运行时设置 > 连接配置文件 > WLAN > 设置 > SSID。
b. 键入 Wi-Fi 网络名称(例如 ContosoWiFi),然后单击“添加”。
c. 展开 SSID > WLANXmlSettings > SecurityType 并选择“打开”等设置。
d. 展开 SSID > WLANXmlSettings > AutoConnect 并选择 TRUE 等设置。
e. 可选:若要添加多个 WLAN 网络,请返回“WLANSetting”并重复上述过程。
可选:通过 UI 添加其他应用、驱动程序和设置。 有关详细信息,请参阅使用 Windows ICD 配置自定义项。
导出预配程序包。 例如,单击“导出>预配包>”“下一步>” (取消选中“下一个>生成”) >“加密包”框。 (有关详细信息,请参阅导出预配程序包。)
重要
当你对预配程序包进行任何更改时,Windows 配置设计器会递增预配文件 (customizations.xml) 中的版本号。 从 Windows 10 版本 1709 开始,预配程序包的版本号与常规包版本一样,也是一个四位数的部件号。 在以前的版本(1709 之前的版本)中,版本号不是“<主要版本号>.<次要版本号>”格式,而是一个带小数点的编号。 例如,1.19 是低于 1.2 的版本。
注意
或者,可以使用任何所需更改(包括上述 wifi 设置)更新 C:\MyWorkspace\Source-<arch>\Products\ProductB\prov
中的 customizations.xml。 在这种情况下,不需要新包。 如果进行更改,请确保递增版本号。 有关详细信息,请参阅 Windows 预配应答文件。
- 从工作区打开“IoTCorePShell.cmd”文件并执行以下 PowerShell 命令。
Add-IoTProvisioningPackage Prov.WiFiSettings "C:\IoT\Provisioning\WiFiSettings\WiFiSettings.ppkg"
(or) newprovpkg Prov.WiFiSettings "C:\IoT\Provisioning\WiFiSettings\WiFiSettings.ppkg"
这会在 C:\MyWorkspace\Common\Packages\Prov.WifiSettings
中创建一个新文件夹。
这还会将 FeatureID PROV_WIFISETTINGS 添加到 C:\MyWorkspace\Common\Packages\OEMCOMMONFM.xml
文件。
生成用于预配的 cab 文件。
New-IoTCabPackage Prov.WifiSettings (or) buildpkg Prov.WifiSettings
更新项目的配置文件
使用 Add-IoTProductFeature 更新产品测试配置文件
Add-IoTProductFeature ProductB Test PROV_WIFISETTINGS -OEM (or) addfid ProductB Test PROV_WIFISETTINGS -OEM
生成并测试映像
如创建基本映像中所述再次生成 FFU 映像。 只需运行 New-IoTFFUImage 命令:
New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test
生成 FFU 文件并按照刷写 Windows IoT 核心版映像中所述将其刷入硬件设备后,在打开设备时应该会应用预配程序包自定义项。 在本示例中,默认应用是 IoT 核心版默认应用,在设备启动时,该应用会显示有关映像的基本信息。
测试是否已应用预配设置
从 IoT 设备上拔下任何网线。
选择默认值。 在“让我们连接吧”屏幕上,选择“跳过此步骤”。
如果你的无线网络在连接范围内,则此屏幕将显示已成功连接该网络,并显示该网络的 IP 地址。
测试网络连接并上传应用
可以连接到设备的门户页以排查网络连接问题、上传应用或查看有关设备的更多详细信息。
将技术人员电脑和设备连接到同一网络。
例如,若要通过有线网络进行连接,请插入以太网网线。 若要通过无线网络进行连接,请确保技术人员计算机和 IoT 核心版设备连接到同一无线网络。
在技术人员电脑上打开 Internet Explorer,然后键入带有 http:// 前缀和 :8080 后缀的设备 IP 地址。
http://10.123.45.67:8080
出现提示时,请输入设备的默认用户名和密码。 (默认为:Administrator \ p@ssw0rd)
此时将打开 Windows 设备门户。 在此处,你可以上传应用包,查看安装的应用并在应用之间切换。
单击“ 网络>配置文件”。 应会看到创建的 Wi-Fi 配置文件。
如果设备能够自动连接到 WiFi 网络,则在“可用网络”下,你应会在配置的网络旁边看到一个勾选标记。
如果网络需要完成接受许可条款等步骤,则设备可能不会自动连接。
疑难解答
检查 Wi-Fi 广播频率(2.4GHz 或 5GHz)。 某些 Wi-Fi 适配器(例如 Raspberry 3 上的内置 Wi-Fi 适配器)仅支持 2.4GHz Wi-Fi 网络。 虽然这是最常用的 Wi-Fi 广播频率,但许多 Wi-Fi 网络以 5GHz 频率广播。 请更改广播频率或使用其他适配器。
确认预配程序包设置可在网络上正常工作。 使用笔记本电脑进行测试:
断开笔记本电脑与网络的连接:单击系统托盘中的网络图标,选择无线网络,然后单击“断开连接”。
确认不再连接该网络。
通过双击“ProductAProv.ppkg”安装预配程序包。 应会自动连接无线网络。
检查是否已将配置文件添加到设备
使用以太网连接连接到设备。
使用 PuTTY 等 SSH 客户端进行连接。
连接后,检查安装了哪些配置文件:
netsh wlan show profiles
该网络应出现在用户配置文件列表中。
对每个设备使用不同的设备名称。 这有助于防止网络冲突。 在为设备创建媒体时请设置此名称。