刚学易语言没多久 第一次写多线程
但是运行之后 检测验证码是正常运行的 3秒一识别
WS模式 一旦选中 就变成了
wswwsswwwssswwwwsssswwwwwsssss
每次都+1的情况由于有延迟 加到最后就变成了wswsswwsswswwwwsss类似这样的 验证也是识别速度越来越快 最后导致软件CPU占用过多崩溃
是哪里写错了么 还是应该加点什么
求助各位前辈!
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | 句柄数组 | 整数型 | 0 | 线程句柄 | 整数型 | | 验证监测 | 逻辑型 | | 模式监测 | 文本型 | | 免注册大漠插件 (“C:\dm.dll”, 0 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 大漠 | 大漠中文版 | | | i | 整数型 | | | 句柄 | 整数型 | | | 初始化COM库 ()窗口_枚举句柄2_祥云 (句柄数组, “App”, “PVP”)计次循环首 (取数组成员数 (句柄数组 ), i )大漠多线程信息 [i ].大漠. 创建对象 ()调试输出 (大漠多线程信息 [i ].大漠. 取插件版本 ()) 大漠多线程信息 [i ].窗口句柄 = 句柄数组 [i ]绑定游戏 (i )计次循环尾 ()线程句柄 = 大漠多线程信息 [i ].线程句柄 线程_启动 (&多线程开始, i, 线程句柄 )辅Zhu延时 (200 )时钟1.时钟周期 = 10000 变量名 | 类 型 | 静态 | 数组 | 备 注 | 大漠 | 大漠中文版 | | | ret | 整数型 | | | 句柄 | 整数型 | | |
大漠 = 大漠多线程信息 [i ].大漠 句柄 = 大漠多线程信息 [i ].窗口句柄 ret = 大漠. 绑定Ex (句柄, “dx.graphic.3d”, “windows”, “windows”, “”, 0 )如果 (ret = 1 )调试输出 (“绑定成功”)调试输出 (“绑定失败”)辅Zhu延时 (500)变量名 | 类 型 | 静态 | 数组 | 备 注 | 大漠 | 大漠中文版 | | | 涂鸦x | 整数型 | | | 涂鸦y | 整数型 | | |
大漠 = 大漠多线程信息 [i ].大漠 大漠多线程信息 [i ].大漠. 置全局路径 (“C:\bmp”)验证监测 = 真 判断循环首 (验证监测 = 真)线程_启动 (&检测验证码, i, 线程句柄 )辅Zhu延时 (500 )判断 (单选框_WS模式.选中 = 真)线程_启动 (&WS模式, i, 线程句柄 )调试输出 (“当前选中的是星火模式”)辅Zhu延时 (3000)判断循环尾 ()计次循环首 (取数组成员数 (句柄数组 ), i )判断 (线程_启动 (&开始验证, i, 线程句柄 ) = 假)调试输出 (“线程启动失败”)返回 ()调试输出 (“第”, 到文本 (i ), “个线程开始验证”)辅Zhu延时 (500)计次循环尾 ()变量名 | 类 型 | 静态 | 数组 | 备 注 | 大漠 | 大漠中文版 | | | 检测x | 整数型 | | | 检测y | 整数型 | | |
大漠多线程信息 [i ].大漠. 找图 (0, 0, 1024, 768, “叹号.bmp”, “050505”, 0.9, 0, 检测x, 检测y )调试输出 (检测x, 检测y )如果真 (检测x > 0 )调试输出 (“检测到验证码”)辅Zhu延时 (2000 )线程_启动 (&识别验证码, i, 线程句柄 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 大漠 | 大漠中文版 | | | 图片数据 | 字节集 | | | x | 整数型 | | | y | 整数型 | | | 失败x | 整数型 | | | 失败y | 整数型 | | | 登录x | 整数型 | | | 登录y | 整数型 | | | 识别是否成功 | 整数型 | | |
大漠多线程信息 [i ].大漠. 截图 (450, 255, 578, 383, “验证码” + 到文本 (i ) + “.bmp”)辅Zhu延时 (100 )图片数据 = 读入文件 (“C:\bmp\验证码” + 到文本 (i ) + “.bmp”)辅Zhu延时 (100 )判断 (坐标_识别 (图片数据, x, y )) 调试输出 (x, y, “开始验证”)识别是否成功 = 0 调试输出 (“识别失败”)辅Zhu延时 (100)大漠多线程信息 [i ].大漠. 鼠标移动 (x + 450, y + 255 )辅Zhu延时 (10 )大漠多线程信息 [i ].大漠. 鼠标_左键单击 ()辅Zhu延时 (100 )调试输出 (“识别成功”)如果真 (识别是否成功 = 0 )大漠多线程信息 [i ].大漠. 鼠标移动 (516, 321 )辅Zhu延时 (10 )大漠多线程信息 [i ].大漠. 鼠标_左键单击 ()辅Zhu延时 (100 )大漠多线程信息 [i].大漠.找图 (0, 0, 1024, 768, “验证失败.bmp”, “050505”, 0.9, 0, 失败x, 失败y)判断 (失败x > 0 )调试输出 (“登录界面验证失败”)大漠多线程信息 [i ].大漠. 找图 (0, 0, 1024, 768, “登录1.bmp|登录2.bmp”, “050505”, 0.9, 0, 登录x, 登录y )大漠多线程信息 [i ].大漠. 鼠标移动 (登录x, 登录y )辅Zhu延时 (10 )大漠多线程信息 [i ].大漠. 鼠标_左键单击 ()辅Zhu延时 (100 )模式监测 = “WS模式”判断循环首 (模式监测 = “WS模式”)大漠多线程信息 [i ].大漠. 键盘_按住 ( #W键 )辅Zhu延时 (1600 )大漠多线程信息 [i ].大漠. 键盘_弹起 ( #W键 )辅Zhu延时 (20 )大漠多线程信息 [i ].大漠. 键盘_按住 ( #S键 )辅Zhu延时 (1620 )大漠多线程信息 [i ].大漠. 键盘_弹起 ( #S键 )辅Zhu延时 (20 )如果 (单选框_WS模式.选中 = 假)跳出循环 ()判断循环尾 ()SetProcessWorkingSetSize (取当前进程伪句柄_ (), 50000, 100000 )
|