请告诉我下,每次 逐位取机器码ascii进行计算后,得到的那个数值,是多少啊
比如 第一次得到98 那么对应的注册码的第一位是多少呢? 飘云大哥 望告诉下,我新手
再次再次表示感谢
我学我学我学学学
我学我学我学学学
学习中~~~~~~~~~~~请勿打扰/:017 /:017
谢谢!!!!!!!!!!
学习中。。。。收藏老大的文章。。。
哇哇,看起来有点小难~~~~~~~如果有人带着学习就好了
总结出算法大概如下,不知道有没有错:
算法:
逐位取机器码转成ASCII码,设为x
y右移8位(y初始值为1)
x xor y =z
z转换成UNICODE码(即为注册码)
z转换成ASCII码
(z+y)*2+3=下一个y,参与下一位注册码的计算
循环计算
不知道怎么写vb的算法注册机,有没有人指点一下?/:018
[ 本帖最后由 609358291 于 2008-2-4 01:53 编辑 ]
算法注册机源码如下,和大家分享,一起学习!
Function GetRegCode(JQM As String) As String
y& = 1
For i& = 1 To Len(JQM)
n& = Asc(Mid(JQM, i, 1)) Xor (y \ 256)
GetRegCode = GetRegCode & Chr(n)
y = (n + y) * 2 + 3
Next
End Function
Private Sub Form_Load()
InputBox "注册码为:", "请复制", GetRegCode("078BFBFF")
End
End Sub
[ 本帖最后由 609358291 于 2008-2-4 02:04 编辑 ]