Created
August 7, 2015 14:40
-
-
Save roachhd/62f9f7284ff92dcd9f59 to your computer and use it in GitHub Desktop.
Find your product key for Windows OS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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
Interesting script and clean implementation of the conversion function. It’s always useful to understand how system-level information is handled in Windows using scripting. I usually explore similar automation and creative tools for learning purposes. Simple tools like Paint 3D are also helpful for beginners who want to practice basic digital design and visualization skills.