TC官方合作论坛

标题: 如何解决循环脚本界面假死,关闭游戏恢复,线程已开启。 [打印本页]

作者: tc激动    时间: 2014-8-23 14:54
标题: 如何解决循环脚本界面假死,关闭游戏恢复,线程已开启。
线程开启循环代码,运行几分钟后,TC无响应界面假死,代码停止执行,关闭游戏后TC界面恢复正常,是否循环找图找字过多溢出导致,如何解决,请大家帮忙支个招,延时加过,计数也试过。
主要脚本代码:
功能 热键_启动_热键()
    测试线程句柄 = 线程.开启("测试.测试功能","")
功能结束

功能 测试功能()   
    变量 c = 0
    变量 intX,intY,dm_ret   
    循环(循环控制开关)        
             dm_ret = dm.FindPic(213,359,410,491,"fdz.bmp","000000",0.9,0,intX,intY)
            如果(intX >= 0 && intY >= 0)
            辅助.等待(500)
            dm.moveto(intX+50,intY+30)
            dm.leftclick()
            辅助.等待(300)
            dm.keypress(32)
            否则
            dm.keypress(27)
            如果结束
        dm_ret = dm.FindPic(562,34,748,202,"abc.bmp","000000",0.9,0,intX,intY)
        如果(intX >= 0 && intY >= 0)
            辅助.等待(3000)
            dm.keypress(74)            
            c = c + 1
            测试.标签输出("刷图次数" & c)            
        否则
            dm_ret = dm.FindPic(774,64,795,83,"BOSS.bmp","000000",0.9,0,intX,intY)
            如果(intX >= 0 && intY >= 0)
            辅助.等待(300)               
            dm.keypress(122)
           dm.keydown(68)
            l辅助.等待(300)
            dm.keyup(68)
            dm.KeyDown(68)
            辅助.等待(200)
            dm.keyUp(68)
            dm.keypress(122)
            辅助.等待(2000)
            dm.keypress(102)               
            如果结束
            dm_ret = dm.FindStr(215,402,275,425,"商店","e6c89b-000000",1.0,intX,intY)
            如果(intX >= 0 && intY >= 0)
                辅助.等待(200)
                dm.keypress(27)
            如果结束
        如果结束        
    循环结束   
功能结束



作者: 610761555    时间: 2014-8-23 19:35
代码能运行,加延迟没用,看不出问题

如果(intX>=0) 就行没必要啰嗦把intY也写上
作者: tc激动    时间: 2014-8-23 19:38
加 intY 只是习惯。
脚本运行几分钟后,TC程序会假死,脚本不循环运行。
作者: 491135    时间: 2014-12-10 01:31
tong qiu
作者: liaozhaoyu    时间: 2014-12-10 02:01
跳出看看




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