|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
空间 TC多开测试
//默认空间
线程句柄
对象句柄
文件句柄
账号
a=110
b=220
Ts=数组[0]
功能 主线程()
变量 返回值,数组大小,i
句柄数组=数组[1]
返回值=系统.枚举("叱咤风云",0)
字符串.分割(返回值,"|",句柄数组)
数组空间.大小(句柄数组,数组大小)//判断数组大小
遍历(i=0;i<数组大小;i++)
Ts=数组空间.重定义(Ts,真,i+1)//由于每开启一个线程就多需要一个天使对象,这里必须重新定义天使对象数组大小
变量 参数=句柄数组[i]&","&i//合并参数 窗口句柄和i的值,i的值是为了传递给Ts[i] 这个对象,每开启一次i+1
//有的朋友就在这里就绑定窗口,其实也是可以的,但我不太喜欢这种做法.
线程.扩展开启("TC多开测试.子线程",参数,"TC多开测试.解绑",i)//开启分线程
辅助.等待(100)//等待一下,避免多个线程同时绑定窗口,导致绑定失败
遍历结束
功能结束
功能 子线程(参数)//接受参数 var 参数=句柄数组[i]&","&i
变量 i,窗口句柄,绑定返回值
参数数组=数组[1]
字符串.分割(参数,",",参数数组)//分割出传过来的参数 i和窗口句柄的值
窗口句柄=参数数组[0]
i=参数数组[1]
Ts[i]=com("dm.dmsoft")//创建天使对象
绑定返回值=Ts[i].BindWindow(窗口句柄,"dx2","normal","normal",0)//绑定
辅助.等待(1000)
如果(绑定返回值==0)
help.messagebox("绑定失败")
返回 假
否则
Ts[i].SetPath(辅助.获取资源路径("rc:"))
Ts[i].SetDict(0,"jh.txt")
//窗口.激活(窗口句柄)
//窗口.还原(窗口句柄)
TC多开测试.退出游戏(i,窗口句柄)
辅助.等待(100)
如果结束
功能结束
功能 解绑(i)
Ts[i].UnBindWindow()
返回 真
功能结束
功能 退出游戏(i,窗口句柄)
intX,intY,x,y,x1,y1,x2,y2,x3,y3
线程.进入临界区(对象句柄)
循环(真)
Ts[i].FindPic(100,100,1024,768,"账号.bmp","000000",0.9,0,x3,y3)
如果(x3>0)
跳出
否则
窗口.激活(窗口句柄)
窗口.还原(窗口句柄)
Ts[i].FindPic(455,523,573,557,"退出游戏.bmp","000000",0.9,0,intX,intY)
如果(intX>0)
Ts[i].MoveTo(intX,intY)
辅助.等待(50)
超级鼠标.左键单击()
辅助.等待(2000)
否则
TC多开测试.登出账号(窗口句柄,i)
如果结束
如果结束
循环结束
线程.离开临界区(对象句柄)
功能结束
功能 登出账号(i,窗口句柄)
intX,intY
Ts[i].FindStr(454,343,573,378,"登出账号","ffffff-000000",1.0,intX,intY)
如果(intX>0)
Ts[i].MoveTo(intX,intY)
辅助.等待(50)
超级鼠标.左键单击()
辅助.等待(1000)
否则
TC多开测试.登出(窗口句柄,i)
辅助.等待(1000)
如果结束
功能结束
功能 登出(i,窗口句柄)
intX,intY
Ts[i].FindStr(454,389,570,425,"退出游戏","ffffff-000000",1.0,intX,intY)
如果(intX>0)
Ts[i].MoveTo(intX,intY)
辅助.等待(50)
超级鼠标.左键单击()
辅助.等待(1000)
否则
超级键盘.按键(27)
辅助.等待(1000)
如果结束
功能结束
每次开启都 Ts[i].FindStr(454,343,573,378,"登出账号","ffffff-000000",1.0,intX,intY) 这条数组越界 ! 实在找不到方法求大神帮忙讲解下!
|
|