如何判断文件系统上的 Windows 版本和版本?

Chl*_*hil 34 windows

我正在尝试恢复一台无法启动的旧计算机,但我不确定它运行的是哪个版本的 Windows。如何简单地通过检查文件系统来判断?

我相当有信心它是 Vista 或 Windows 7。它是 Windows Server 2008 的可能性很小。

Moa*_*oab 33

看文件

C:\Windows\System32\License.rtf

可以在所有这些 Windows 操作系统中找到

远景,W7,W8,W8.1

这些许可证 rtf 将具有 Windows 版本和版本,例如 Windows 7 Pro。

Windows 10 有 rtf 文件但不显示版本,但如果顶部有仲裁条款注释,您就知道它是 W10,或者使用 Matthew Steeples 回答中的资源管理器技巧。

要查找 Windows 10 产品类型(Home Pro 等)类型,请参阅本页下方 Moif Murphy 的回答

  • 这对 Linux 用户来说尤其好。 (8认同)
  • 在 Windows 10 上,您可以检查文件夹:“C:\Windows\System32\Licenses”。对于专业版,它应该包含类似“c:\Windows\System32\Licenses\neutral\_Default\Professional\license.rtf”的内容。对于 Windows 10 Enterprise,它似乎同时具有“Enterprise”和“Professional”文件夹。我猜家庭版会有“Home”文件夹。 (2认同)

Mat*_*les 15

最好的办法是找到 Windows 可执行文件(例如 explorer.exe)的属性。就我而言,它的文件和产品版本是 6.1.7601.17567

6.0.xxxx.xxxxx 将表示 Windows Vista(6000、6001 和 6002 分别为 RTM、SP1 和 SP2)。

6.1.xxxx.xxxxx 将表示 Windows 7(7600 和 7601 是 RTM 和 SP1)。

相同的版本号也适用于 Windows 服务器,所以我不确定你如何区分使用这种方法的版本号。


Moi*_*phy 9

使用注册表,您可以查找版本和版本

我在 Stackoverflow 上找到了这个问题的答案确定离线磁盘映像的 Windows 版本、版本和服务包

使用之下HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion。我想你知道在哪里可以找到那个蜂巢吗?!可以%SystemRoot%\System32\config在名称下找到相应的配置单元SOFTWARE

旁注:您可以通过查看一些众所周知的文件(例如kernel32.dll, ntdll.dll)并进入它们的版本信息资源(您要查找的是文件版本:with,例如GetFileVersionInfo())来尝试验证您的结果。

如果需要,可以在 中找到版本值 HKLM\SYSTEM\CurrentControlSet\Control\ProductOptions

更具体地说,如何加载另一个注册表的配置单元:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/regedit_load_hive.mspx?mfr=true

  • 您可以将不同的配置单元加载到 regedit 中,我很确定。如果没有,我敢打赌有一个工具可以做到这一点。 (6认同)

小智 7

如果你在同一个系统上有 Linux,你可以启动到 Linux,确保 Windows 分区已挂载(例如它在 中/mnt/C),然后执行strings /mnt/C/Windows/System32/ntoskrnl.exe 2>/dev/null | grep amd64. 对我来说,printed9600.18258.amd64fre.winblue_ltsb.160303-0600和谷歌搜索 winblue 表明这是 Windows 8.1 的代号。


miv*_*ivk 5

如果您没有正在运行的 Windows 并且想从 Linux 机器上查找信息,您可以使用hivexget读取磁盘上的注册表文件。

对于基于 Debian 的系统,请使用sudo apt install libhivex-bin.

示例(使用 grep 使输出更短):

# hivexget /mnt/tmp/WINDOWS/system32/config/software 'Microsoft\Windows NT\CurrentVersion' \
| egrep 'ProductName|CSDVersion|"ProductId'
"ProductName"="Microsoft Windows XP"
"CSDVersion"="Service Pack 3"
"ProductId"="76487-OEM-0011903-00101"
Run Code Online (Sandbox Code Playgroud)

移除| egrep ...部件以查看该键下的所有值。


bey*_*ime 5

对于 Windows 10,可以使用 Windows 操作系统上的 Wordpad.exe、notepad.exe 来分析
C:\\ProgramData\Microsoft\Diagnosis\osver.txt .

在 Unix 系统上,控制台命令如
cat <Windows system root partition>/ProgramData/Microsoft/Diagnosis/osver.txt
显示版本号。

操作系统版本号示例:10.0.18362(不含 .116 - .267@2019-07-26)

  • 我喜欢这个答案的简单性以及它与 Linux 的 /etc/os-release 的比较。 (2认同)