Skip to content

Instantly share code, notes, and snippets.

@jacobsalmela
Created December 30, 2014 13:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jacobsalmela/168fd21e0184a0e76c6f to your computer and use it in GitHub Desktop.
Save jacobsalmela/168fd21e0184a0e76c6f to your computer and use it in GitHub Desktop.
Reveal Office product key
'http://www.howtogeek.com/206329/how-to-find-your-lost-windows-or-office-product-keys/
'http://discuss.howtogeek.com/t/see-system-product-key-fast/12931
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