技术编辑解决win7/win8.1密钥升级win10系统:密钥一键查询备份的

发布日期: 2014-10-23      作者:韩博士      来源:http://www.jzjq.net

技术编辑解决win7/win8.1密钥升级win10系统:密钥一键查询备份的方案?

2016年7月29日,微软关闭win7/win8.1免费升级win10的通道,此时如果还有网友想升级windows10但无升级的,可以尝试使用本文办法进行全新安装。全新安装的好处就是不会产生新旧系统各种衔接不畅的问题,虽说现在升级安装win10后的体验不像一年前那么差了,但这种本质性的差异是windows系统升级安装的通病,很难避免。

当然,免费激活这事大概还是直接升级的更保险,因为一般来说升级之前的系统都是激活好了的,虽然我们激活系统方式可谓“条条大路通罗马”吧,但微软一般也没计较什么,都给予了激活状态的win10。不过使用全新安装再写入产品密钥的方式大概更适合正版网友,或者自己手中有合法密钥(至少密钥没被封禁)的网友。如果你能够确认手中的密钥无问题,操作上很简单,只需要把如下代码使用记事本等保存为.vbs格式(文件名自拟),双击运行便可,适用于win7/win8.1/win10系统。

1、图标说明:这幅图的意思并非企业版支持免费升级,而是说本文办法同样适用于企业版密钥查询和备份;

代码如下:

option Explicit

dim objshell,path,digitalid, Result

set objshell = Createobject("wscript.shell")

'set registry key path

path = "HKLM\soFTwARE\Microsoft\windows nT\CurrentVersion\"

'Registry key value

digitalid = objshell.RegRead(path & "digitalproductid")

dim productname,productid,productKey,productdata

'Get productname, productid, productKey

productname = "系统名称:" & objshell.RegRead(path & "productname")

productid = "产品id:" & objshell.RegRead(path & "productid")

productKey = "已安装密钥:" & ConvertToKey(digitalid)

productdata = productname & vbnewLine & productid & vbnewLine & productKey

'show messbox if save to a file

if vbYes = MsgBox(productdata & vblf & vblf & "要将密钥保存到文件吗?", vbYesno + vbQuestion, "软媒魔方备份windows密钥信息") then

save productdata

End if

'Convert binary to chars

Function ConvertToKey(Key)

Const Keyoffset = 52

dim iswin10, Maps, i, j, Current, Keyoutput, Last, keypart1, insert

'Check if os is windows 10

iswin10 = (Key(66) \ 6) And 1

Key(66) = (Key(66) And &HF7) or ((iswin10 And 2) * 4)

i = 24

Maps = "BCdFGHJKMpQRTVwxY2346789"

do

Current= 0

j = 14

do

Current = Current* 256

Current = Key(j + Keyoffset) + Current

Key(j + Keyoffset) = (Current \ 24)

Current=Current Mod 24

j = j -1

Loop while j >= 0

i = i -1

Keyoutput = Mid(Maps,Current+ 1, 1) & Keyoutput

Last = Current

Loop while i >= 0

if (iswin10 = 1) Then

keypart1 = Mid(Keyoutput, 2, Last)

insert = "n"

Keyoutput = Replace(Keyoutput, keypart1, keypart1 & insert, 2, 1, 0)

if Last = 0 Then Keyoutput = insert & Keyoutput

End if

ConvertToKey = Mid(Keyoutput, 1, 5) & "-" & Mid(Keyoutput, 6, 5) & "-" & Mid(Keyoutput, 11, 5) & "-" & Mid(Keyoutput, 16, 5) & "-" & Mid(Keyoutput, 21, 5)

End Function

'save data to a file

Function save(data)

dim fso, fname, txt,objshell,Username

set objshell = Createobject("wscript.shell")

'Get current user name

Username = objshell.ExpandEnvironmentstrings("%Username%")

'Create a text file on desktop

fname = "C:\Users\" & Username & "\desktop\windows密钥备份.txt"

set fso = Createobject("scripting.Filesystemobject")

set txt = fso.CreateTextFile(fname)

txt.writeline data

txt.Close

End Function

2、代码粘贴到记事本后,另存为.vbs格式;

3、运行效果,备份密钥会以文本文件(.txt)的形式保存到桌面;

4、保存密钥文件的内容。

当然,自己手动新建文件,复制和粘贴代码再保存怪麻烦的,所以各位直接在下方下载现成的文件就省心了,下来以后直接运行。

windows 产品密钥查询备份文件:网盘下载(2KB)

上述win7/win8.1密钥升级win10系统备份,有想要升级的网友可参考本教程,当然还有其他升级办法。

大家都在下载

电脑公司Win10 尝鲜中秋国庆版64位 2020.10

语言:简体中文大小:更新日期:2020-10-01

韩博士 ghost win8.1 64位官方通用版v2019.10

语言:简体中文大小:更新日期:2019-09-17

深度技术Windows10 64位 精心装机版 2020.08

语言:简体中文大小:更新日期:2020-07-13

返回顶部