这份教程将以最主流、最强大的 Windows ADK (Assessment and Deployment Kit) 中的 Windows System Image Manager (WSIM) 工具为例,为你一步步讲解整个过程。

重要声明
- 技术要求:本教程涉及大量专业操作,包括命令行、XML 编辑、镜像处理等,请确保你具备一定的计算机基础。
- 风险提示:操作不当可能导致系统文件损坏、部署失败。强烈建议在虚拟机(如 VMware, VirtualBox)中进行练习和测试,确认无误后再在实体机上操作。
- 版本兼容性:Windows ADK 的版本必须与你要封装的 Windows 10 安装文件版本严格匹配,使用 ADK 2004 来封装 20H2 的系统是可行的,但使用 ADK 22H2 来封装 1909 的系统则可能会出现问题。
第一部分:准备工作
在开始之前,你需要准备好以下所有工具和文件。
硬件要求
- 一台性能尚可的电脑,用于制作封装环境。
- 足够的存储空间:
- 至少 50GB 的可用磁盘空间用于存放 ADK 和工作文件。
- 一个至少 8GB 的 U 盘,用于制作可启动的安装介质。
- 一个额外的、干净的分区或硬盘(建议 50GB 以上),用于存放原始的 Windows 10 安装文件和最终生成的封装镜像。
软件和文件准备
-
Windows 10 安装文件 (install.wim)
- 这是最核心的文件,你需要一个完整的 Windows 10 安装镜像(
.iso文件)。 - 你可以从微软官网下载官方工具 "Media Creation Tool" 来制作,也可以从 "ITMSDN" 等渠道获取。
- 将
.iso文件挂载或解压,并找到sources文件夹下的install.wim文件。记下这个文件的路径。
- 这是最核心的文件,你需要一个完整的 Windows 10 安装镜像(
-
Windows ADK (Windows Assessment and Deployment Kit)
- 这是微软官方提供的、用于部署 Windows 系统的完整工具包。
- 下载地址:https://docs.microsoft.com/en-us/windows-hardware/get-started/adk/install-the-adk
- 关键点:在安装 ADK 时,不要全部勾选,只需安装必要的组件,以节省空间和避免不必要的复杂性。
-
Windows 预安装环境 (Windows PE)
(图片来源网络,侵删)- 这是封装过程中必须的轻量级操作系统环境,用于启动计算机和运行部署脚本。
- 在安装 ADK 时,请确保勾选了以下组件:
- Deployment Tools
- Windows Preinstallation Environment
- User State Migration Tool (可选,用于迁移用户文件)
-
驱动程序
- 准备好你目标电脑所有硬件的驱动程序,特别是主板芯片组、SATA/NVMe 控制器、网卡等驱动。
- 最佳实践:将所有驱动程序解压到一个单独的文件夹中,按类别(如
Chipset,Network,Storage)分好子文件夹。
-
应用程序
- 准备好你希望在系统封装完成后自动安装的常用软件(如 Office、浏览器、杀毒软件等)。
- 最佳实践:这些软件最好是静默安装版本(Silent Install),即可以通过命令行参数(如
/quiet,/silent)实现无人值守安装,你可以在网上搜索软件名 + "silent install" 来查找相应的安装参数。
第二部分:安装和配置环境
-
安装 Windows ADK
- 运行下载的 ADK 安装程序 (
adksetup.exe)。 - 点击 "下一步",接受许可协议。
- 在 "功能选择" 界面,只勾选以下必需组件:
- Deployment Tools
- Windows Preinstallation Environment
- ImageX (包含在 Deployment Tools 中)
- User State Migration Tool (可选)
- 点击 "安装",等待完成。
- 运行下载的 ADK 安装程序 (
-
整理工作目录
(图片来源网络,侵删)- 在你的硬盘上创建一个总的工作文件夹,
D:\Win10_Image。 - 在此文件夹下创建以下子文件夹,结构清晰至关重要:
D:\Win10_Image\Source:存放原始的install.wim文件。D:\Win10_Image\Drivers:存放你准备好的所有驱动程序。D:\Win10_Image\Apps:存放你准备好的所有应用程序安装包。D:\Win10_Image\Output:存放最终生成的封装镜像文件。D:\Win10_Image\ISO:存放用于制作 ISO 的文件。
- 在你的硬盘上创建一个总的工作文件夹,
-
挂载或解压 Windows 10 ISO
- 将下载的 Windows 10 ISO 文件挂载,或使用解压软件(如 7-Zip)将其完整解压到
D:\Win10\Image\Source文件夹中,确保install.wim文件位于该路径下。
- 将下载的 Windows 10 ISO 文件挂载,或使用解压软件(如 7-Zip)将其完整解压到
第三部分:创建无人应答文件 (Unattend.xml)
这是封装教程的核心。Unattend.xml 文件是一个 XML 配置文件,它告诉 Windows 安装程序在每个阶段该做什么。
-
打开 Windows System Image Manager (WSIM)
开始菜单 -> 搜索 "Windows System Image Manager" 并打开。
-
创建新的应答文件
- 在 WSIM 中,点击菜单栏的
文件->新建应答文件。 - 你会看到一个空白的应答文件窗口。
- 在 WSIM 中,点击菜单栏的
-
加载 Windows 安装程序文件
- 在右侧的 "Windows 映像" 窗格中,右键点击
Select a Windows Image。 - 选择
Load Windows Image。 - 浏览到
D:\Win10_Image\Source\sources\install.wim文件。 - 在弹出的窗口中,选择一个版本(
Windows 10 Pro),然后点击确定。 - 关键一步:加载完镜像后,WSIM 会自动关联一个
Catalog(.clg) 文件,如果它没有自动关联,你需要手动右键点击Windows Image->Create Catalog,然后加载生成的.clg文件,这个文件包含了所有可以配置的设置项。
- 在右侧的 "Windows 映像" 窗格中,右键点击
-
配置应答文件 (拖拽组件) 从右侧的 "Windows 组件" 列表中,找到并拖拽你需要的组件到左侧的应答文件窗口中,以下是一些常用组件的配置说明:
-
amd64_Microsoft-Windows-International-Core_neutral(国际化设置)- 设置
InputLocale,SystemLocale,UserLocale,UILanguage为你需要的语言(如zh-CN)。 - 设置
SetupUILanguage为zh-CN。
- 设置
-
amd64_Microsoft-Windows-Setup_neutral(安装程序设置)- 在
DiskConfiguration->Disk中,你可以配置磁盘分区。- 重要:
WillShowUI一定要设置为Never,否则安装过程会弹出分区界面。 - 你可以创建分区、格式化、分配盘符,这是一个非常灵活但也很容易出错的地方,请小心操作。
- 重要:
- 在
-
amd64_Microsoft-Windows-Shell-Setup_neutral(系统外壳设置)- 这是配置最丰富的部分。
OOBE(开箱即体验体验):HideEULAPage: 设置为true(跳过许可协议)。ProtectYourPC: 设置为1(推荐设置,自动启用自动更新)。SkipMachineOOBE: 设置为true(跳过 OOBE 向导,如键盘布局、账户创建等)。SkipUserOOBE: 设置为true(跳过用户账户创建)。
UserAccounts:- 在
AdministratorPassword中,可以设置一个管理员密码。注意:密码是明文存储在 XML 文件中的! - 或者,你可以使用
LocalAccounts组件来创建新的本地用户。
- 在
TimeZone: 设置为你的时区(如China Standard Time)。RegisteredOwner/RegisteredOrganization: 设置注册信息。AutoLogon:Enabled: 设置为true。Username: 设置为管理员用户名(如Administrator)。Password: 输入管理员密码。LogonCount: 可以设置为1或更多,表示自动登录的次数。
FirstLogonCommands(这是实现自动安装驱动的关键!)- 右键点击
SynchronousCommand,添加多个命令。 - 每个命令可以包含一个或多个操作,
- 安装驱动:
cmd.exe /c pnputil /add-driver "D:\Win10_Image\Drivers\Chipset\inf\*.inf" /install - 静默安装应用:
cmd.exe /c D:\Win10_Image\Apps\ChromeSetup.exe /silent /install - 执行脚本:
cmd.exe /c D:\Win10_Image\Scripts\MyConfig.bat
- 安装驱动:
- 右键点击
-
amd64_Microsoft-Windows-PnpCustomizationsNonWinPE_neutral(即插即用设置)- 在
DriverPaths中,可以指定驱动的搜索路径,添加一个路径D:\Win10_Image\Drivers,并设置Enabled为true。
- 在
-
-
保存和验证应答文件
- 点击
文件->保存,将应答文件保存为D:\Win10_Image\Unattend.xml。 - 在 WSIM 的底部,会显示 "验证" 状态,确保没有红色的错误提示,如果有,根据提示修改你的 XML 文件。
- 点击
第四部分:封装镜像
我们将使用 DISM (Deployment Image Servicing and Management) 工具,将我们配置好的 Unattend.xml 和驱动、应用集成到原始的 install.wim 文件中。
-
打开命令提示符 (管理员)
在开始菜单右键点击 "命令提示符",选择 "以管理员身份运行"。
-
集成应答文件和驱动
- 执行以下命令,请根据你的实际路径进行修改。
DISM /Image:D:\Win10_Image\Mount /Apply-Image /ImageFile:D:\Win10_Image\Source\sources\install.wim /Index:1 /CheckIntegrity DISM /Image:D:\Win10_Image\Mount /Apply-Unattend D:\Win10_Image\Unattend.xml DISM /Image:D:\Win10_Image\Mount /Driver /Recurse:D:\Win10_Image\Drivers
命令解释:
- 第一条命令:将
install.wim的第一个版本(Index:1)挂载到D:\Win10_Image\Mount目录。注意:Mount文件夹必须事先存在。 - 第二条命令:将
Unattend.xml应答文件应用到挂载的镜像中。 - 第三条命令:递归地将
D:\Win10_Image\Drivers文件夹下的所有驱动集成到镜像中。
-
卸载并提交更改
- 集成完成后,执行以下命令来卸载镜像并保存所有更改。
DISM /Image:D:\Win10_Image\Mount /Unmount /Commit
- 如果操作成功,
D:\Win10_Image\Mount文件夹将被清空。
第五部分:生成 ISO 文件
现在我们有了封装好的 install.wim,需要用它来制作一个可启动的 ISO 文件。
-
使用 CD/DVD Master 工具
- 你可以使用微软的 CD/DVD Master 工具,或者使用其他第三方工具(如
oscdimg)。 - 这里以
oscdimg为例(它通常包含在 ADK 的Windows ADK for Windows 10\Assessment and Deployment Kit\Deployment Tools\Oscdimg目录下)。
- 你可以使用微软的 CD/DVD Master 工具,或者使用其他第三方工具(如
-
运行命令生成 ISO
- 打开命令提示符(管理员),切换到
oscdimg.exe所在的目录,或者直接使用其完整路径。
oscdimg -m -l"WIN10_PREINSTALLED" -u2 -udfver102 -bootdata:2#p0,e,b"D:\Win10_Image\Source\boot\etfsboot.com"#pEF,e,b"D:\Win10_Image\Source\efi\microsoft\boot\efisys.bin" "D:\Win10_Image\Source\" "D:\Win10_Image\Output\MyCustomWin10.iso"
命令解释:
-m: 创建可启动的 ISO。-l"WIN10_PREINSTALLED": 设置卷标名称。-u2: UDF 文件版本。-udfver102: UDF 版本。-bootdata: 指定引导数据,这是制作 UEFI+BIOS 双启动 ISO 的关键,路径需要根据你的Source文件夹结构进行调整。"D:\Win10_Image\Source\": 源文件夹路径,即你解压的 Windows 10 安装文件。"D:\Win10_Image\Output\MyCustomWin10.iso": 输出的 ISO 文件路径和名称。
- 打开命令提示符(管理员),切换到
-
验证 ISO
- 生成过程可能需要一些时间,完成后,你可以在
D:\Win10_Image\Output文件夹中找到MyCustomWin10.iso文件。 - 使用虚拟机挂载这个 ISO 文件,启动并观察整个安装过程,看是否完全自动化,并且所有设置、驱动和软件都已正确安装。
- 生成过程可能需要一些时间,完成后,你可以在
第六部分:常见问题与技巧
-
问题:安装过程中仍然弹出界面?
- 原因:
Unattend.xml文件中的某个组件的WillShowUI属性没有设置为Never。 - 解决:仔细检查
amd64_Microsoft-Windows-Setup_neutral和amd64_Microsoft-Windows-Shell-Setup_neutral下的所有相关设置。
- 原因:
-
问题:驱动或软件没有自动安装?
- 原因:
- 路径错误。
FirstLogonCommands中的路径是目标系统中的路径,而不是你制作环境的路径,在目标系统中,你的驱动可能被安装到了C:\Drivers,你需要先在封装过程中将驱动复制到目标系统的某个固定位置(如通过Unattend.xml的Settings->Component->RunSynchronousCommand),然后再在FirstLogonCommands中调用。 - 命令错误,检查静默安装命令是否正确。
- 驱动或软件本身不支持静默安装。
- 路径错误。
- 解决:简化
FirstLogonCommands,先只执行一个简单的dir命令,看脚本是否在执行,再逐步排查。
- 原因:
-
技巧:使用应答文件生成器
- 手动编写 XML 文件非常繁琐且容易出错,你可以使用一些第三方工具,如 Windows 10 Answer File Generator,它们提供图形化界面,可以帮你生成基础的
Unattend.xml文件,你再用 WSIM 进行微调。
- 手动编写 XML 文件非常繁琐且容易出错,你可以使用一些第三方工具,如 Windows 10 Answer File Generator,它们提供图形化界面,可以帮你生成基础的
-
技巧:创建启动脚本
- 对于复杂的任务(如复制大量文件、修改注册表),可以编写一个
.bat或.ps1脚本,放在FirstLogonCommands中执行,这比在 XML 中写一长串命令要清晰得多。
- 对于复杂的任务(如复制大量文件、修改注册表),可以编写一个
封装 Windows 10 系统是一个集耐心、细心和技巧于一体的工作,本教程提供了一个完整的框架,但实际操作中你可能会遇到各种特定问题,请务必:
- 在虚拟机中反复测试。
- 善用 WSIM 的验证功能。
- 仔细检查
Unattend.xml中的每一个路径和参数。
祝你封装成功!
