不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
按键精灵根据图片查找坐标脚本示例
编辑:dnawo 日期:2010-09-21

如上图所示,按键精灵根据附件中的图片在整个屏幕上找到记事本左上角的坐标,偏移后得出数字左上角的坐标,最后通过匹配得出是什么数字。代码如下:
复制内容到剪贴板
程序代码

//8.x语法
Dim w, h
Dim x, y
Dim code, i
const CODELENGTH = 5
w = Plugin.Sys.GetScRX
h = Plugin.Sys.GetScRY
//在整个屏幕上找图片,并返回左上角坐标
FindPic 0,0,w,h,"Attachment:\a.bmp",0.9,x,y
If x>0 And y>0 Then
//偏移后得到数字左上角坐标
x = x + 7
y = y + 71
For i=1 To CODELENGTH
code = code & GetNum(x,y)
x = x + 5 + 1
Next
MessageBox code
Else
MessageBox "验证码位置查找失败!"
End If
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
//******************* 函数,子过程结束 *******************
Dim w, h
Dim x, y
Dim code, i
const CODELENGTH = 5
w = Plugin.Sys.GetScRX
h = Plugin.Sys.GetScRY
//在整个屏幕上找图片,并返回左上角坐标
FindPic 0,0,w,h,"Attachment:\a.bmp",0.9,x,y
If x>0 And y>0 Then
//偏移后得到数字左上角坐标
x = x + 7
y = y + 71
For i=1 To CODELENGTH
code = code & GetNum(x,y)
x = x + 5 + 1
Next
MessageBox code
Else
MessageBox "验证码位置查找失败!"
End If
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 | 引用: 0 | 查看次数: 8311
发表评论
请登录后再发表评论!