我有一个 Windows 10 InstallUSB,我想知道它是哪个版本的 Windows 10。在网上搜索后,我在很多地方都找到了这种技术,文件 [ install.<esd||swm||wim>
, boot.wim
] 各不相同:
dism /Get-WimInfo /WimFile:"F:\sources\install.esd" /Index:1
- 如果没有
/Index
,它会列出文件中可用的每个版本 [图像],例如 Home、Pro 等,但不列出版本 - 索引
1
始终存在,并且通常还有更高的索引可用
网上帮助报告有时会DISM
报告错误的 WIM/ESD 版本,因为 WIM 头信息错误。
我认为这种情况发生在我身上,因为我刚刚下载了 Windows 10 21H2,创建了一个 InstallUSB,上面的命令返回Version : 10.0.19041
的是 v2004,根据维基百科。
- 我注意到这是 YYMM 格式的最后一个版本,因为它在 20H2 之后立即切换为 YYHN [“H”代表“一半”](也许 WIM 版本停留在 19041?)
除了安装之外,有人知道还有其他提取版本信息的方法吗?
答案1
有一篇 Microsoft 支持文章解决了此问题:
构建新的 Windows 映像文件后,版本和内部版本号报告不正确
我们正在努力简化未来版本的这一程序,以便图像元数据报告正确的版本和内部版本号。
解决方法
要确定介质是否为 20H2 介质,请装载映像,运行
dism /get-packages
并检查是否安装了 20H2 启用包。具体来说,查找名为 的包Package_for_KB4562830
。
答案2
@w32h,非常接近 -20H2、21H1 和 21H2 均是如此:
Windows 10 版本 2004、20H2、21H1 和 21H2 共享一个通用的核心操作系统,并具有一组相同的系统文件。因此,Windows 10 版本 21H2 中的新功能包含在 Windows 10 版本 2004、20H2 和 21H1 的最新每月质量更新中,但处于非活动和休眠状态。这些新功能将保持休眠状态,直到通过“启用包”打开它们,“启用包”是一个小型、快速安装的“主开关”,可激活 Windows 10 版本 21H2 功能。
@w32sh 的参考提示如何找到启用包。示例命令如下:
dism /Get-Packages /Image:"c:\path\to\mounted\wim"
- 该命令作用于已安装的 WIM。安装 WIM 需要几分钟时间:
# Assumes an Install USB, or ISO, mounted at E: and the index of the edition [Home, Pro, etc.] must be chosen: Dism /Mount-Image /ImageFile:"E:\sources\install.wim" /MountDir:"C:\path\to\mounted\wim" /Index:1
如果您有 ESD 而不是 WIM(媒体创建工具默认下载前者),这显示如何转换它,这也需要几分钟:
mkdir "C:\esd_to_wim"
# Can be repeated with other /SourceIndex values since it appends:
dism /Export-Image /SourceImageFile:"E:\Sources\install.esd" /SourceIndex:1 /DestinationImageFile:"C:\esd_to_wim\install.wim" /Compress:Max /CheckIntegrity
搜索找到了其他的支持包(到目前为止):
以下是在 powershell 中查询已安装的 WIM 以获取启用 KB [此例中为 21H2] 的示例:
PS> dism /Get-Packages /Image:"C:\path\to\mounted\wim" | Select-String KB
Package Identity : Package_for_KB5003791~31bf3856ad364e35~amd64~~19041.1237.1.3