回复 111# sdlyfjx
YR3J3-GCW8F-BYDV4-D46B7-Y4GRH
取硬盘序列号,我在坛子上发过贴,你搜一下便是
这是以前写的转换win7 KEY函数,从网上流传的VBS脚本转化而来
Func _ConvertToKey($regKey)
Local $ProductKey
Local $KeyString = StringTrimLeft($regKey, 2)
Local Const $KeyOffset = 53
Local $PossibleChars = "BCDFGHJKMPQRTVWXY2346789"
Local $i = 28, $j, $Cur, $LeftString, $RightString
While $i >= 0
$j = 14
$Cur = 0
While $j >= 0
$LeftString = ''
$RightString = ''
$Cur = $Cur * 256
$Cur = Dec(StringMid($KeyString, 2 * ($j + $KeyOffset) - 1, 2)) + $Cur ;取第$j + $KeyOffset个字节,转换十进制与$Cur相加
$LeftString = StringLeft($KeyString, 2 * ($j + $KeyOffset) - 1 - 1);取字符串左边$j + $KeyOffset -1 个字符
$RightString = StringTrimLeft($KeyString, StringLen($LeftString) + 2) ;删除字符串左边$LeftString长度+2的字符串
$KeyString = $LeftString & Hex(Int($Cur / 24), 2) & $RightString;组合成新字符串,等价于用计算出的新字节内容替换相同位置的字节
$Cur = Mod($Cur, 24)
$j = $j - 1
WEnd
$i = $i - 1
$ProductKey = StringMid($PossibleChars, $Cur + 1, 1) & $ProductKey
If Mod(29 - $i, 6) = 0 And ($i <> -1) Then
$i = $i - 1
$ProductKey = '-' & $ProductKey
EndIf
WEnd
Return SetError(0, 0, $ProductKey)
EndFunc ;==>_ConvertToKey
当然,这只是告诉你原理,au3encode的注册码计算肯定是跟上面不一样的
取硬盘,CPU相关信息组成特征字符串,计算注册码,然后用可逆加密方法保存在注册表中,所以你在注册表中HKEY_LOCAL_MACHINE\SOFTWARE\Au3Encode看到的只是一串16进制数字,并不是我给你的注册码 |