VBA写的注册机, 省得编译了。:) (1千字)
先在Excel中录制一个宏,然后编辑它,用下面的程序覆盖原有的空宏。A1里填上名字(用英文,我不会解决中文的问题 :( )。
运行宏,A2中应该是注册码了。:)
我的编程水平很差,别笑话我。
-------------------- cut here -----------------------
Option Base 1
Sub 宏1()
'
Dim HAryNum(4) As Integer, HAryStr(4) As String
Dim OutCode As Long, InName As String, CurStrNum As String
Dim i As Integer, Dgt As Integer
Dim OCstr As String
InName = Range("A1").Value
InName = UCase(InName)
For i = 1 To 4
HAryNum(i) = Asc(Mid(InName, i, 1))
Next
For i = 5 To &H100
Dgt = ((i - 1) And 3) + 1
If i <= Len(InName) Then
CurStrNum = Asc(Mid(InName, i, 1))
Else
CurStrNum = &H0
End If
HAryNum(Dgt) = HAryNum(Dgt) Xor CurStrNum
Next
For i = 4 To 1 Step -1
HAryStr(i) = Hex(HAryNum(i))
If Len(HAryStr(i)) = 1 Then
HAryStr(i) = "0" & HAryStr(i)
End If
OCstr = OCstr + HAryStr(i)
Next
OutCode = "&H" + OCstr
Range("A2").Value = OutCode
'
End Sub
------------------ end ------------------
