TC官方合作论坛

标题: 功能()重新运行绑定窗口的问题 [打印本页]

作者: 4920766    时间: 2014-4-17 11:13
标题: 功能()重新运行绑定窗口的问题
网页游戏,用的是游戏客户端。才掉包,能找到重连标志,并可以点自动重点。问题是:重连后因为窗口发生变化,需要重新运行“功能 打BOSS()”再去绑定窗口,我不知道怎么就能重新运行“功能 打BOSS()”,请各位高人指点,最好详细点,我菜鸟,有点笨。先谢谢了!


功能 打BOSS()
    dm=com("dm.dmsoft")
    dm.SetPath(辅助.获取资源路径("rc:"))
    dm.setdict(0,"dm.txt")
    辅助.等待(1000)  
   
    变量 窗口句柄,子窗口句柄,大小
    天使=数组[0]//先定义个天使的全局对象备用
    线程句柄数组=数组[0]//定义一个线程句柄数组备用
    父句柄数组,大小,子句柄字串,子句柄数组,edit_hwnd4,大小1,下标1
    句柄组合字串=系统.枚举("XXXXXXXXXXX",0)
    如果(句柄组合字串=="")
        辅助.消息框("目标程序未开启")
        返回 假
    如果结束
    //由于分割结果没有分隔符也是可以分割成功的,所以我们单开和多开一起处理
    字符串.分割(句柄组合字串,"|",父句柄数组)
    数组空间.大小(父句柄数组,大小)
    遍历(下标=0;下标<大小;下标++)//遍历每个记事本的每个子句柄,找出类名为Edit的句柄.
        子句柄字串=系统.枚举(父句柄数组[下标],3)
        字符串.分割(子句柄字串,"|",子句柄数组)
        数组空间.大小(子句柄数组,大小1)
        遍历(下标1=0;下标1<大小1;下标1++)
            如果(窗口.类名(子句柄数组[下标1])=="MacromediaFlashPlayerActiveX")
                edit_hwnd4=子句柄数组[下标1]//找到我们想要的子句柄 这个时候 我们可以开线程了
            如果结束
        遍历结束
    遍历结束   
    dm.BindWindow(edit_hwnd4,"dx2","dx","dx",0)
    辅助.等待(2000)
   
   循环(真)

       ******其他内容

       辅助.等待(100)
        dm.FindStrFast(0,0,990,700,"重连","9f714b-000000",0.8,x_1,y_1)
        
        如果(x_1>0)
            辅助.等待(100)
            循环(x_1>0)
                辅助.等待(500)
                dm.MoveTo(x_1+77,y_1+7)//鼠标移动(允许x+误差3,y+误差3)
                辅助.等待(10000)
                dm.LeftClick()
                辅助.等待(5000)
                dm.FindStrFast(0,0,990,700,"重连","9f714b-000000",0.8,x_1,y_1)
                辅助.等待(100)
            循环结束   
         
         dm.UnBindWindow()
      
        如果结束
    循环结束
功能结束

作者: 墨染年华    时间: 2014-4-17 14:23
本帖最后由 墨染年华 于 2014-4-17 14:27 编辑

代码好长。。。。瞬间看不下去了



你可以在点击重连之前进行解除绑定,然后重连成功后再次进行绑定





欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1