Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows教程綜合 >> 關於windows >> 一鍵備份win7、win8、win10激活碼

一鍵備份win7、win8、win10激活碼

日期:2017/2/7 13:29:06      編輯:關於windows
 

免費激活這事可能還是直接升級的更保險,因為一般來說升級之前的系統都是激活好了的,雖然大家激活系統方式可謂“條條大路通羅馬”吧,但微軟一般也沒計較什麼,都給予了激活狀態的Win10。不過使用全新安裝再輸入產品密鑰的方式可能更適合正版用戶,或者自己手中有合法密鑰(至少密鑰沒被封禁)的用戶。如果你能夠確認手中的密鑰沒有問題,不妨嘗試一下IT之家的方法。操作上很簡單,只需要把如下代碼使用記事本等保存為.vbs格式(文件名自擬),雙擊運行即可,適用於Win7/Win8.1/Win10系統。

如上圖所示,把以下代碼保存到文本檔並將擴展名改成.vbs然後雙擊即可!

========================

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

==============================

復制以上代碼,即可一件備份當前系統的激活碼了

Copyright © Windows教程網 All Rights Reserved