Option Explicit '------------------------------------------------------------------------------------- Dim objReg,WshNetwork Dim Digits (24),HexBuf (100), HexDigitalPID (15) Dim StartOffset,EndOffset,i,dLen,sLen,KEYSTRING,HN,N,Value Digits (0) = "B" : Digits (1) = "C": Digits (2) = "D": Digits (3) = "F": Digits (4) = "G": Digits (5) = "H": Digits (6) = "J": Digits (7) = "K": Digits (8) = "M": Digits (9) = "P": Digits (10) = "Q": Digits (11) = "R": Digits (12) = "T": Digits (13) = "V": Digits (14) = "W": Digits (15) = "X": Digits (16) = "Y": Digits (17) = "2": Digits (18) = "3": Digits (19) = "4": Digits (20) = "6" : Digits (21) = "7" : Digits (22) = "8": Digits (23) = "9" Set WshNetwork = WScript.CreateObject("WScript.Network") Set objReg = GetObject("winmgmts://" & WshNetwork.computername & "/root/default:StdRegProv") objReg.GetBinaryValue &H80000002, "SOFTWARE/Microsoft/Windows NT/CurrentVersion/", "DigitalProductId", HexBuf StartOffset = 52 : EndOffset =67 For i = StartOffset to EndOffset HexDigitalPID (i-StartOffset) = HexBuf(i) Next dLen = 29 : sLen = 15 KEYSTRING ="" For i=dLen-1 TO 0 Step -1 IF ((i + 1) MOD 6) = 0 Then KEYSTRING = KEYSTRING & "-" Else HN = 0 For N = (sLen -1) TO 0 Step -1 Value = ( (HN *2^8 ) Or HexDigitalPID (N)) HexDigitalPID (N) = Value / 24 HN = (Value MOD 24) Next KEYSTRING = KEYSTRING & Digits(HN) End IF Next Wscript.Echo StrReverse(KEYSTRING) Wscript.quit
Get windows product key infromation
最新推荐文章于 2026-01-07 08:56:25 发布
本文介绍了一种使用VBScript从Windows注册表中读取并解析产品密钥的方法。通过创建WScript.Network对象及调用WinMGMTs获取注册表中的DigitalProductId值,进而提取出产品的激活密钥。
5586

被折叠的 条评论
为什么被折叠?



