Cách sao lưu bản quyền Windows 10

0 329

Để có thể sử dụng toàn bộ các tính năng của Windows 10, tất nhiên là chúng ta phải sở hữu bản quyền của sản phẩm này. Sau khi có bản quyền, chúng ta sẽ phải biết cách sao lưu bản quyền Windows 10 nữa.

Hướng dẫn sao lưu bản quyền Windows 10 bằng PowerShell

Trước hết, bạn hãy gọi Notepad bằng cách vào Start Menu, gõ Notepad và bấm Enter.

sao lưu bản quyền win 10 - ảnh 01

Sau khi Notepad được khởi chạy thành công, hãy nhập đoạn mã dưới đây vào trình soạn thảo:

#Main function
Function GetWin8Key
{
$Hklm = 2147483650
$Target = $env:COMPUTERNAME
$regPath = "Software\Microsoft\Windows NT\CurrentVersion"
$DigitalID = "DigitalProductId"
$wmi = [WMIClass]"\\$Target\root\default:stdRegProv"
#Get registry value
$Object = $wmi.GetBinaryValue($hklm,$regPath,$DigitalID)
[Array]$DigitalIDvalue = $Object.uValue
#If get successed
If($DigitalIDvalue)
{
#Get producnt name and product ID
$ProductName = (Get-itemproperty -Path "HKLM:Software\Microsoft\Windows NT\CurrentVersion" -Name "ProductName").ProductName
$ProductID = (Get-itemproperty -Path "HKLM:Software\Microsoft\Windows NT\CurrentVersion" -Name "ProductId").ProductId
#Convert binary value to serial number
$Result = ConvertTokey $DigitalIDvalue
$OSInfo = (Get-WmiObject "Win32_OperatingSystem" | select Caption).Caption
If($OSInfo -match "Microsoft Windows 8" -or $OSInfo -match "Microsoft Windows 10")
{
if($Result)
{[string]$value ="ProductName : $ProductName `r`n" `
+ "ProductID : $ProductID `r`n" `
+ "Installed Key: $Result"
$value
#Save Windows info to a file
$Choice = GetChoice
If( $Choice -eq 0 )
{
$txtpath = "C:\Users\"+$env:USERNAME+"\Desktop"
New-Item -Path $txtpath -Name "WindowsKeybackup.txt" -Value $value -ItemType File -Force | Out-Null
}
Elseif($Choice -eq 1)
{
Exit
}
}
Else
{
Write-Warning "Please run this script on Windows 8.x or Windows 10"
}
}
Else
{
Write-Warning "Please run this script on Windows 8."
}}
Else
{
Write-Warning "Failed to get Windows 8 product key,Some error occured."
}}
#Get user choice
Function GetChoice
{
$yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes",""
$no = New-Object System.Management.Automation.Host.ChoiceDescription "&No",""
$choices = [System.Management.Automation.Host.ChoiceDescription[]]($yes,$no)
$caption = "Confirming"
$message = "Save product key to a file?"
$result = $Host.UI.PromptForChoice($caption,$message,$choices,0)
$result
}
#Convert binary to serial number
Function ConvertToKey($Key)
{
$Keyoffset = 52
$isWin8 = [int]($Key[66]/6) -band 1
$HF7 = 0xF7
$Key[66] = ($Key[66] -band $HF7) -bOr (($isWin8 -band 2) * 4)
$i = 24
[String]$Chars = "BCDFGHJKMPQRTVWXY2346789"
do
{
$Cur = 0
$X = 14
Do
{
$Cur = $Cur * 256
$Cur = $Key[$X + $Keyoffset] + $Cur
$Key[$X + $Keyoffset] = [math]::Floor([double]($Cur/24))
$Cur = $Cur % 24
$X = $X - 1
}while($X -ge 0)
$i = $i- 1
$KeyOutput = $Chars.SubString($Cur,1) + $KeyOutput
$last = $Cur
}while($i -ge 0)$Keypart1 = $KeyOutput.SubString(1,$last)
$Keypart2 = $KeyOutput.Substring(1,$KeyOutput.length-1)
if($last -eq 0 )
{
$KeyOutput = "N" + $Keypart2
}
else
{
$KeyOutput = $Keypart2.Insert($Keypart2.IndexOf($Keypart1)+$Keypart1.length,"N")
}
$a = $KeyOutput.Substring(0,5)
$b = $KeyOutput.substring(5,5)
$c = $KeyOutput.substring(10,5)
$d = $KeyOutput.substring(15,5)
$e = $KeyOutput.substring(20,5)
$keyproduct = $a + "-" + $b + "-"+ $c + "-"+ $d + "-"+ $e
$keyproduct}
GetWin8Key

Lưu file này lại với tên gọi bất kì nhưng ở phần định dạng các bạn phải để là .ps1, ví dụ như keybanquyen.ps1 chẳng hạn. Click chuột phải vào file vừa lưu, chọn Run with PowerShell.

sao lưu bản quyền win 10 - ảnh 02

Xác nhận sao lưu key bằng tùy chọn Y.

Vậy là key bản quyền của bạn đã được sao lưu vào file. Ngoài ra, khi bạn sử dụng tài khoản Microsoft để đăng nhập vào Windows 10 thì key bản quyền của bạn đã tự động tích hợp vào tài khoản này nên bạn không cần làm gì thêm. Bước sao lưu bản quyền nói trên chỉ dành cho những người kĩ tính hơn thôi.

Nguồn
Bạn cũng có thể thích
Comments
Loading...