WinPE制作系列(2):制作集成PowerShell 7的ARM64 WinPE映像

📅 2026/7/3 9:43:32
WinPE制作系列(2):制作集成PowerShell 7的ARM64 WinPE映像
1. 介绍本文档用于指导 IT 人员为 ARM 架构设备基于 Snapdragon / Windows on ARM 平台制作一个集成 PowerShell 7 的 WinPE映像。本方案适用于为ARM64 设备制作离线启动环境不依赖 Intune 或 MECM 管理体系。2. 准备工作2.1 安装 Windows ADK下载并安装最新版本 Windows Assessment and Deployment Kit (ADK)https://learn.microsoft.com/en-us/windows-hardware/get-started/adk-install⚠️注意事项版本要求 10.1.26100.2454December 2024 或更新版本安装选项 仅需安装 Deployment Tools 功能2.2 安装 WinPE Add-on下载并安装与 ADK 版本完全一致的 Windows PE Add-onhttps://learn.microsoft.com/en-us/windows-hardware/get-started/adk-install⚠️注意事项版本要求 10.1.26100.2454December 2024 或更新版本WinPE add-on的版本 必须 与已安装的 ADK 版本保持一致否则可能导致组件安装失败或 WinPE 启动异常。2.3 准备 PowerShell 7ARM64下载 PowerShell 7 ARM64 ZIP 包例如 PowerShell-7.5.4-win-arm64.ziphttps://learn.microsoft.com/en-us/powershell/scripting/install/install-powershell-on-windows?viewpowershell-7.5#zip⚠️必须使用 ZIP 版本不要使用 MSI2.4 执行环境说明为确保流程顺利执行建议在以下环境中完成 WinPE 构建推荐使用 Windows 11 x64 作为构建主机。当前流程已在 Windows 11 x64 环境中验证通过。⚠️建议优先使用 x64 主机构建 WinPE以获得最佳兼容性。3. 制作基础 WinPE 映像3.1 生成基础 WinPE 工作目录以管理员身份运行 Deployment and Imaging Tools Environment执行以下命令copype arm64 C:\WinPE_arm643.2 挂载 WinPE 映像以管理员身份运行PowerShell执行以下命令挂载 boot.wimDism /Mount-Image /ImageFile:C:\WinPE_arm64\media\sources\boot.wim /Index:1 /MountDir:C:\Mount3.3 添加 WinPE 可选组件⚠️以下组件必须按顺序安装且必须使用 ADK 自带的 dism.exeWinPE-WMIdism /Image:C:\Mount /Add-Package/PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\WinPE-WMI.cabdism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\en-us\WinPE-WMI_en-us.cabWinPE-NetFxdism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\WinPE-NetFx.cabdism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\en-us\WinPE-NetFx_en-us.cabWinPE-PowerShelldism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\WinPE-PowerShell.cabdism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\en-us\WinPE-PowerShell_en-us.cabWinPE-DismCmdletsdism /Image:C:\Mount /Add-Package /PackagePath:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\arm64\WinPE_OCs\WinPE-DismCmdlets.cab3.4 更新 WinPE 映像⚠️更新策略说明为确保 WinPE 与目标 Windows 版本如 Windows 11 24H2保持一致建议使用最新版本的 Windows ADK 和 WinPE Add-on 作为基础在需要时集成最新的累计更新本文中的 KB5043080 和 KB5046740 为测试过程中验证过的示例更新属于可选项。在实际生产环境中建议优先使用最新累计更新以保证兼容性、安全性和长期可维护性。以管理员身份运行PowerShell 分别执行以下命令更新WinPE映像安装KB5043080 更新 - 从 Windows Update Catalog 下载ARM-Based KB5043080并保存至本地例如C:\Temp\ windows11.0-kb5043080-arm64_df540a05f9b118e339c5520f4090bb5d450f090b.msuAdd-WindowsPackage -PackagePath:C:\Temp\windows11.0-kb5043080-arm64_df540a05f9b118e339c5520f4090bb5d450f090b.msu -Path C:\Mount -Verbose安装KB5046740更新- 从 Windows Update Catalog 下载ARM-Based KB5046740 并保存至本地例如C:\Temp\ windows11.0-kb5046740-arm64_d48c01bdb0ed3ea44f67474f3ffa332069d46466.msuAdd-WindowsPackage -PackagePath:C:\Temp\windows11.0-kb5046740-arm64_d48c01bdb0ed3ea44f67474f3ffa332069d46466.msu -Path C:\Mount -Verbose3.5 注入驱动以获取额外功能本方案选择注入完整的 SCCM 驱动包目的是避免逐个驱动手动管理的复杂性。在部分设备如 Lenovo T14s Gen6、Dell 7455上即使不注入完整驱动包基础功能仍可正常运行。从设备OEM网站下载MCM(SCCM)包 - 例如: Lenovo T14s Gen 6 SCCM 驱动包Dism /Image:C:\Mount /Add-Driver /Driver:C:\Drivers\SCCM\TP_T14s_Gen6_21N1-21N2_W11_24_202511\20261805.10250286\ /Recurse4. 集成 PowerShell 74.1创建目标目录在离线 WinPE 中创建目标目录 mkdir C:\Mount\Program Files\PowerShell\7将 PowerShell 7 ZIP 解压到上述目录确保存在C:\Mount\Program Files\PowerShell\7\pwsh.exe4.2 配置系统环境变量以管理员身份运行注册表编辑器加载离线 SYSTEM 注册表C:\Mount\Windows\System32\config\SYSTEM修改以下注册表路径HKLM\OfflineWinPE\ControlSet001\Control\Session Manager\Environment参照下图所示设置系统环境变量- Path追加键值 %ProgramFiles%\PowerShell\7\- PSModulePath追加键值 %ProgramFiles%\PowerShell\;%ProgramFiles%\PowerShell\7\- 分别新建键值如下APPDATA / LOCALAPPDATA / HOMEDRIVE / HOMEPATH设置完成后卸载离线注册表4.3 设置 WinPE 自动以 PowerShell 7启动创建文件 C:\Mount\Windows\System32\winpeshl.ini内容如下[LaunchApps]%WINDIR%\System32\wpeinit.exe%ProgramFiles%\PowerShell\7\pwsh.exe4.4 保存并卸载映像Dism /Unmount-Image /MountDir:C:\Mount /Commit⚠️注意事项卸载映像前请确保关闭打开的文件浏览器以免卸载失败5. 创建可启动U盘5.1 初始化 U 盘插入U盘以管理员身份运行 PowerShell执行以下命令diskpartlist diskselect disk n 请务必确认 n 对应的是 目标 USB 设备避免误操作导致数据丢失。CleanConvert MBRcreate partition primaryformat fsfat32 quickassign letter Sexit5.2 写入 WinPE 启动介质⚠️启动介质创建方式说明本方案使用 MakeWinPEMedia /UFD 工具直接从 WinPE 工作目录生成可启动 U 盘。如有需要也可使用 Rufus 等工具作为替代方案。以管理员身份运行Deployment and Imaging Tools Environment执行以下命令MakeWinPEMedia /UFD C:\WinPE_Arm64 S:⚠️注意事项请确保盘符 S: 与前一步分配给 USB 设备的盘符一致5.3 拔掉U盘并妥善保管6. 验证范围说明本流程已在以下 ARM64 设备上验证Lenovo ThinkPad T14s Gen6Dell Latitude 7455验证内容包括WinPE 启动输入设备支持存储设备识别⚠️在部分设备如 Surface系列上可能需要额外注入输入设备驱动如触控或键盘驱动。建议根据目标设备型号进行适配和验证。7. 总结完成以上步骤后即可获得一个启动后直接进入 PowerShell 7 的 ARM64 WinPE 映像。该环境适用于企业级部署、自动化脚本执行、ARM 设备维护与故障排查。