//8.x语法
const CODELENGTH = 5 //验证码长度
Dim x, y //初始化坐标
Dim code, i //验证码
x = 158
y = 31
For i=1 To CODELENGTH
code = code & GetNum(x,y)
x = x + 5 + 1
Next
MessageBox code
EndScript
//******************* 函数,子过程开始 *******************
//功能:获取图片上某个范围内的一个数字
//参数:
// intX:数字左上角x坐标值
// intY:数字左上角y坐标值
Function GetNum(intX, intY)
Dim num(9)
Dim pixelcolor, str, i
//0-9特征码
num(0) = "0111010001100011000110001100011000101110"
num(1) = "0010001100001000010000100001000010001110"
num(2) = "0111010001100010001000100010001000011111"
num(3) = "0111010001000010011000001000011000101110"
num(4) = "0001000110010100101010010011110001000011"
num(5) = "1111110000100001111000001000011000101110"
num(6) = "0111010010100001111010001100011000101110"
num(7) = "1111110010000100010000100001000010000100"
num(8) = "0111010001100010111010001100011000101110"
num(9) = "0111010001100011000101111000010100101110"
//每个数字占像素5*8,循环得到各个像素上的颜色值
For i=0 To 39
pixelcolor = GetPixelColor(intX + i mod 5, intY + i \ 5)
If pixelcolor="000000" Then
str = str & "1"
Else
str = str & "0"
End If
Next
//返回结果0-9,未知则为"?"
GetNum = "?"
For i=0 To UBound(num)
If num(i) = str Then
GetNum = i : Exit For
End If
Next
End Function
//******************* 函数,子过程结束 *******************说明:本例只是演示用,只能用于破解未经过任何处理白底黑字的数字验证码!
评论(0)
暂无评论。