必须先用dism /get-wiminfo /wimfile:x:\sources\install.esd查看索引,若报错0x80070005则已加密需解密;未加密时确认索引存在、磁盘空间充足且路径为纯英文,再导出为wim。

当你手头只有Windows 10安装U盘或挂载的ISO镜像,却找不到install.wim文件,只看见一个install.esd,又不确定它是否包含多个系统版本、是否加密、是否能被DISM直接读取——这时必须穿透表层,查看隐藏在ESD/WIM文件内部的真实结构和元数据。
确认安装介质中是否存在ESD或WIM文件
打开文件资源管理器,进入挂载后的ISO或U盘的 \sources\ 目录。如果看到 install.wim,说明是WIM格式;如果只看到 install.esd,说明是ESD格式;两者不会同时存在。注意:某些精简版镜像可能还包含 boot.wim 或 winre.wim,它们也需一并检查。
若该目录下既无install.wim也无install.esd,说明这不是标准Windows 10安装镜像,可能是第三方封装版或恢复分区镜像,后续命令将无法执行。
用DISM查看WIM文件的完整索引信息
以管理员身份运行CMD或PowerShell,执行以下命令(将 X: 替换为你的实际盘符):
dism /Get-WimInfo /WimFile:X:\sources\install.wim /Index:1
这一步只能看到第一个索引的信息。要查看全部可用版本,必须省略 /Index 参数:
dism /Get-WimInfo /WimFile:X:\sources\install.wim
输出结果中每一段“索引: N”代表一个独立的系统版本(如家庭版、专业版、企业版),名称 和 描述 字段明确标出版本类型,大小 字段告诉你该版本占用空间,体系结构 字段确认是x64还是arm64——漏看这个字段可能导致你在32位PE下尝试部署x64镜像而失败。
用DISM查看ESD文件的基础信息(无需解密)
ESD文件同样支持直接读取元数据,命令与WIM完全一致:
dism /Get-WimInfo /WimFile:X:\sources\install.esd
但要注意:部分加密ESD文件会返回错误0x80070005(拒绝访问),这不是路径错或权限低,而是微软对零售渠道分发的ESD施加的读取限制。此时DISM无法显示任何索引,你将看不到“索引: 1”开头的任何内容。
遇到这种情况,不要反复重试,必须先解密——否则所有后续操作(导出、挂载、应用)都会失败。
识别ESD是否加密的快速判断法
方法一:用记事本或十六进制编辑器打开install.esd,观察文件开头16字节。正常未加密ESD以 MSCF 四字节开头;加密ESD通常以 0x45 0x53 0x44 0x00(即“ESD\0”)开头,且第二字节常为0x00而非0x01。
方法二:在CMD中运行 dism /Get-WimInfo /WimFile:X:\sources\install.esd 后,若提示“拒绝访问”或“无法访问映像”,基本可判定已加密。此时必须使用ESD Decrypter工具处理,不能跳过。
导出ESD中指定索引为WIM前的必查步骤
第一步:确认目标索引存在且可读
运行 dism /Get-WimInfo /WimFile:X:\sources\install.esd /Index:1,成功返回信息才表示索引1有效。若报错,请依次尝试 /Index:2、/Index:3、/Index:4——Win10官方ESD中,索引4几乎总是主安装映像(对应MSDN install.wim),索引1常为恢复环境,索引2/3多为boot.wim变体。
第二步:检查磁盘空间
导出过程需要临时空间:源ESD大小 + 目标WIM大小 ≈ 2倍原文件体积。例如15GB的ESD导出为WIM,至少预留35GB空闲空间,否则export-image命令中途失败且不提示具体原因。
第三步:确保目标路径不含中文或特殊符号
DISM对非ASCII路径支持极差,C:\esd\install.wim 安全,C:\我的工具\install.wim 极大概率报错0x80070002。路径中出现空格都建议改用短名,比如 C:\wimout\。











