最准确的方式是使用 winver 命令:弹窗首行显示系统全称(如 microsoft windows 10 pro),次行是功能更新标识(如 version 22h2),第三行是 os build 19045.4412 等精确构建号。

用 winver 快速确认当前版本名称和构建号
这是最直接、最不容易出错的方式,适合所有用户——它调用的是系统原生弹窗,不依赖网络、不读取缓存、不触发权限检查,结果就是此刻正在运行的版本快照。
- 按
Win + R,输入winver,回车 - 弹出窗口里第一行是系统全称(如
Microsoft Windows 10 Pro),第二行是功能更新标识(如Version 22H2),第三行是OS Build 19045.4412这类精确构建号 - 注意:如果弹窗显示“您的 Windows 版本已过期”,说明系统长期未更新,
winver仍会如实显示当前实际运行的版本,而非你“以为安装了”的版本
在设置中查 Version 和 OS build 字段
设置里的“关于”页本质是读取同一组注册表值,但界面更完整,能同时看到系统类型、安装日期、设备 ID 等上下文信息,适合交叉验证或提交技术支持工单时一并提供。
- 按
Win + I→ 左侧点系统→ 滚动到底部点关于 - 右侧“Windows 规格”区域重点看两行:
版本(如22H2)和操作系统内部版本(如19045.4412) - 容易踩的坑:有些用户误把“Windows 规格”上方的“设备规格”里的处理器型号或内存容量当成版本信息;还有人点进“Windows 更新”页面后反复点击“检查更新”,却没意识到“当前版本”就写在“关于”页——那里才是静态快照,更新页面显示的是“可用更新”,不是当前状态
用 systeminfo | findstr 提取命令行可解析的版本字段
当你需要脚本化判断、批量检查多台机器,或排查远程桌面/自动化部署失败是否因版本不兼容时,这个组合比纯 systeminfo 干净得多,也比手动翻页可靠。
- 以普通用户身份运行
cmd或PowerShell即可,无需管理员权限 - 执行:
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" /C:"OS Build" /C:"System Type" - 输出示例:
OS Name: Microsoft Windows 10 Pro、OS Build: 19045.4412—— 所有字段都带冒号对齐,方便后续用for /f或正则提取 - 注意:
systeminfo在某些精简版或企业锁定环境中可能被禁用,此时会报错The RPC server is unavailable;遇到这种情况,优先退回winver或注册表路径
从注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion 读原始值
这是所有方法的源头——winver、设置、“系统信息”工具最终都读这里。适合排查“界面显示异常”或“版本信息被篡改”类问题,但普通用户不建议手动修改。
- 按
Win + R→ 输入regedit→ 定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion - 右侧关键值:
ProductName(如Windows 10 Pro)、ReleaseId(如22H2)、CurrentBuild(如19045)、UBR(如4412,合起来就是完整构建号19045.4412) - 风险提示:
UBR值可能为空,尤其在刚装完系统但尚未联网更新时;ReleaseId在部分 LTSC 版本中可能显示为空或旧值,此时应以CurrentBuild+UBR组合为准
真正要盯住的只有两个数字:功能更新代号(如 22H2)和完整构建号(如 19045.4412)。前者决定功能边界,后者决定补丁级别。很多人只记前者,结果发现某项新 API 不可用,其实是构建号差了几十个热修复——那几十个点号后面的数字,不是装饰。











