Skip to content

Instantly share code, notes, and snippets.

@FirefoxMetzger
Last active September 14, 2017 16:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save FirefoxMetzger/70b128de4126b3c7866f94a4f5346392 to your computer and use it in GitHub Desktop.
Save FirefoxMetzger/70b128de4126b3c7866f94a4f5346392 to your computer and use it in GitHub Desktop.
This useful script reads out the windows registry, extracts the DigitalProductId and converts it into the corresponding Windows License Key. Source: bottom of https://www.howtogeek.com/206329/how-to-find-your-lost-windows-or-office-product-keys/
Set WshShell = CreateObject("WScript.Shell")
MsgBox ConvertToKey(WshShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId"))
Function ConvertToKey(Key)
Const KeyOffset = 52
i = 28
Chars = "BCDFGHJKMPQRTVWXY2346789"
Do
Cur = 0
x = 14
Do
Cur = Cur * 256
Cur = Key(x + KeyOffset) + Cur
Key(x + KeyOffset) = (Cur \ 24) And 255
Cur = Cur Mod 24
x = x -1
Loop While x >= 0
i = i -1
KeyOutput = Mid(Chars, Cur + 1, 1) & KeyOutput
If (((29 - i) Mod 6) = 0) And (i <> -1) Then
i = i -1
KeyOutput = "-" & KeyOutput
End If
Loop While i >= 0
ConvertToKey = KeyOutput
End Function
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment