There are many tools to extract the Product Key from a live system or from the registry hive of an offline computer. Additionally, here is a neat little Vbscript that gets the Product Key of your current Windows installation–no third-party program required. The script works on Windows 7, 8 and Windows 10.
View Windows 10 Product Key
Method 1: Using WMI command-line or PowerShell
Use the following WMI command-line to fix the product key of your Windows installation.
wmic path softwarelicensingservice get OA3xOriginalProductKey
This method retrieves the activation key stored in the UEFI/BIOS of your computer.
Note that you’ll need to run the above command from an elevated/admin Command Prompt window.
Or, if you’re using PowerShell, run this command from an admin PowerShell window to know the product key:
(Get-WmiObject -query 'select * from SoftwareLicensingService').OA3xOriginalProductKey
In some systems, the above commands would output the caption
OA3xOriginalProductKey and blank rows beneath, showing no product key. This happens if the device doesn’t have an embedded activation/product key.
If the device has a firmware-embedded activation key, it will be displayed in the output. If the output is blank, the device does not have a firmware embedded activation key. Most OEM-provided devices designed to run Windows 8 or later will have a firmware-embedded key.
Method 2: Using Script
Important: Note that the following method simply decodes the
DigitalProductId registry value to get the retail product key. The key retrieved using this method could either be the auto-generated generic Windows 10 key (for systems upgraded from Windows 7 or 8 under digital entitlement). It could also be the retail edition key (if you bought the license earlier) you entered manually during Windows 10 setup. So, if you’re using Windows 10, it’s advisable to give priority to the 1st method.
Copy the following code to Notepad and save the file as GetProductKey.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 = "Product Name: " & objshell.RegRead(Path & "ProductName") ProductID = "Product ID: " & objshell.RegRead(Path & "ProductID") ProductKey = "Installed Key: " & ConvertToKey(DigitalID) ProductData = ProductName & vbNewLine & ProductID & vbNewLine & ProductKey 'Show messbox if save to a file If vbYes = MsgBox(ProductData & vblf & vblf & "Save to a file?", vbYesNo + vbQuestion, "BackUp Windows Key Information") then Save ProductData End If 'Convert binary to chars Function ConvertToKey(Key) Const KeyOffset = 52 Dim isWin8, Maps, i, j, Current, KeyOutput, Last, keypart1, insert 'Check if OS is Windows 8 isWin8 = (Key(66) \ 6) And 1 Key(66) = (Key(66) And &HF7) Or ((isWin8 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 (isWin8 = 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\WindowsKeyInfo.txt" Set fso = CreateObject("Scripting.FileSystemObject") Set txt = fso.CreateTextFile(fName) txt.Writeline Data txt.Close End Function
Double-click to run the script to find out the Product Key of your Windows installation.
One small request: If you liked this post, please share this?One "tiny" share from you would seriously help a lot with the growth of this blog. Some great suggestions:
- Pin it!
- Share it to your favorite blog + Facebook, Reddit
- Tweet it!
About the author
Ramesh Srinivasan founded Winhelponline.com back in 2005. He is passionate about Microsoft technologies and he has been a Microsoft Most Valuable Professional (MVP) for 10 consecutive years from 2003 to 2012.