可通过CMD命令“wmic path softwarelicensingservice get OA3xOriginalProductKey”查询原始产品密钥;2. 使用PowerShell执行“(Get-WmiObject -Query 'SELECT OA3xOriginalProductKey FROM SoftwareLicensingService').OA3xOriginalProductKey”提取密钥;3. 创建VBScript脚本读取注册表DigitalProductId并转换二进制数据,双击运行后显示完整密钥。

如果您需要找回已安装Windows系统的激活密钥(Product Key),但无法通过常规方式查看,可以通过系统内置工具命令行或PowerShell获取。以下是几种可行的操作方法:
本文运行环境:Dell XPS 13,Windows 11
一、使用CMD命令查询产品密钥
通过管理员权限的命令提示符,可以调用系统注册表中的加密信息并解码出当前系统的产品密钥。
1、按下 Win + X 组合键,选择“终端(管理员)”或“命令提示符(管理员)”。
2、在打开的窗口中输入以下命令并按回车执行:wmic path softwarelicensingservice get OA3xOriginalProductKey
3、如果系统绑定了数字许可证或使用了OEM密钥,则会显示对应的原始产品密钥;若未找到则可能为空值。
二、使用PowerShell命令提取密钥
PowerShell提供了更强大的脚本能力,可用于读取注册表中存储的加密密钥数据,并通过算法还原为可读格式。
1、右键点击开始菜单,选择“Windows PowerShell(管理员)”以管理员身份运行。
2、粘贴以下命令并回车执行:(Get-WmiObject -Query 'SELECT OA3xOriginalProductKey FROM SoftwareLicensingService').OA3xOriginalProductKey
3、系统将返回原始出厂密钥(仅适用于预装正版系统的设备)。
三、通过VBScript结合注册表解析完整密钥
由于部分Windows版本不直接暴露完整密钥,需借助脚本从注册表特定路径中提取并转换二进制数据。
1、新建一个文本文档,将以下代码复制进去:
Set objShell = CreateObject("WScript.Shell")
Dim RegPath
RegPath = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId"
DigitalID = objShell.RegRead(RegPath)
Dim LastKey
LastKey = ConvertToKey(DigitalID)
WScript.Echo "Product Key: " & LastKey
Function ConvertToKey(key)
Const KeyOffset = 52
Dim isWin8, Maps, i, j, swap, temp
isWin8 = (key(66) \ 6) And 1
key(66) = (key(66) And &HF7) Or ((isWin8 And 2) * 4)
Maps = "BCDFGHJKMPQRTVWXY2346789"
For i = 24 To 0 Step -1
temp = 0
For j = 14 To 0 Step -1
temp = temp * 256
temp = key(j + KeyOffset) + temp
key(j + KeyOffset) = (temp \ 24)
temp = temp Mod 24
Next
iF i = 24 Then iF temp Mod 24 Then temp = temp - 1
LastKey = Mid(Maps, temp Mod 24 + 1, 1) & LastKey
If InStr(Mid(LastKey, 2), "-") = 0 Then LastKey = Left(LastKey, 5) & "-" & Mid(LastKey, 6)
Next
ConvertToKey = LastKey
End Function
2、将文件另存为“GetKey.vbs”,保存类型选择“所有文件”。
3、双击运行该文件,弹出窗口将显示完整的Windows产品密钥。











