TC官方合作论坛

标题: 为什么大漠找图老是找不到图 [打印本页]

作者: aeioui    时间: 2014-12-17 23:24
标题: 为什么大漠找图老是找不到图
功能 窗口枚举()
    调试输出("进入[窗口枚举]")
    变量 返回串,长度,子句柄串,Flash句柄
    父句柄 = 系统.枚举("子窗口",0)
    调试输出("[父句柄]:" & 父句柄)
   
    如果(父句柄 == "")
        辅助.消息框("[没有打开游戏窗口]")
    否则
        子句柄串 = 系统.枚举(父句柄,3)
        调试输出("[子句柄串]:" & 子句柄串)
    如果结束
    字符串.分割(子句柄串,"|",返回串)
    数组空间.大小(返回串,长度)
    遍历(i=0;i<长度;i++)
        如果(窗口.类名(返回串) == "MacromediaFlashPlayerActiveX")
            Flash句柄 = 返回串
            调试输出("[网页游戏的句柄]:" & Flash句柄)
        如果结束
    遍历结束
   
    dm.SetPath(辅助.获取资源路径("rc:"))
    dm.SetDict(0,"测试.txt")
    辅助.等待(1000)
    dm_ret = dm.BindWindowEx(Flash句柄,"gdi","windows","windows",0)
    如果(dm_ret == 0)
        调试输出("窗口绑定失败")
    否则
        调试输出("窗口绑定成功")
    如果结束
    dm.SetWindowText(父句柄,账号)
    辅助.等待(200)
    一統天下.任务功能区()
功能结束

功能 任务功能区()
    调试输出("进入[任务功能区]")
    变量 x,y
    dm.UseDict(0)
    //判断游戏是否进入
    dm_ret = dm.FindPic(11,693,37,716,"箭头.bmp","000000",0.9,0,x,y)
    调试输出("[箭头dm_ret]:" & dm_ret)
    循环(dm_ret == -1)
        调试输出(x &","& y)
        辅助.等待(500)
    循环结束
    调试输出("进入游戏")
    //判断是否有公告  
   
    dm_ret = dm.FindPic(880,217,931,263,"红叉.bmp","000000",0.9,0,x,y)
    调试输出("[红叉dm_ret:]" & dm_ret)
    循环(dm_ret == -1)
        //调试输出(x &","& y)
        辅助.等待(200)
    循环结束
    辅助.等待(100)
    dm.MoveTo(x,y)
    辅助.等待(100)
    dm.LeftClick()
    辅助.等待(100)
    dm.MoveTo(543,37)

功能结束

用大漠和天使后台绑定测试工具 都提示可以找到图片
但是调试dm时候总是找不到图,请教大神看看,到底在什么地方出现了问题

作者: 言术    时间: 2014-12-18 08:58
本帖最后由 言术 于 2014-12-18 12:11 编辑

看到了一处疑问
如果(窗口.类名(返回串) == "MacromediaFlashPlayerActiveX")
应该加个括号i吧
如果(窗口.类名(返回串) == "MacromediaFlashPlayerActiveX")
Flash句柄 = 返回串

作者: wuyunlong516    时间: 2014-12-18 09:18
我没看认真看你写的什么代码,但是我知道如果插件找不到图,那么就换个插件的绑定模式,什么norma1,gdi,gdi2,dx,dx2,dx3模式,如果换了模式还不能找到图,检查你搜索找图的范围是否在指定区域,找的图是否正确,是否有背景色的变化而无法找到图.
作者: aeioui    时间: 2014-12-18 13:18
言术 发表于 2014-12-18 08:58
看到了一处疑问
如果(窗口.类名(返回串) == "MacromediaFlashPlayerActiveX")
应该加个括号i吧

没错的啊 编译通过 而且绑定也是正确dm
作者: aeioui    时间: 2014-12-18 13:20
wuyunlong516 发表于 2014-12-18 09:18
我没看认真看你写的什么代码,但是我知道如果插件找不到图,那么就换个插件的绑定模式,什么norma1,gdi,gdi2,d ...

关键是用了 天使和大漠的后台绑定测试工具测试过了 也都是能找到图的 范围什么的也对 但是编译就是找不到
后来 重新建立了个新的 只是绑定和找图 也能找到 唉  现在迷惑了
作者: 言术    时间: 2014-12-18 14:10
加点色偏,或者降点相似呢?
作者: q273814    时间: 2014-12-18 15:27
我觉得 如果你一次图片都没找到的话
那就新建一个空项目在里面写一个找桌面图片的 如果找到那就不是插件问题 否则 要么你插件有问题要么你的调用方式有问题
否则如果找桌面的图片没问题只有你项目里有问题那可能是你的相似度和色偏还有图片的问题了
作者: aeioui    时间: 2014-12-18 15:48
言术 发表于 2014-12-18 14:10
加点色偏,或者降点相似呢?

色偏也加了 相似度从0.7~1.0全都试过了 现在打算重新测试下 先从前台试起 然后 天使 大漠 轮流试试吧
作者: aeioui    时间: 2014-12-18 15:49
q273814 发表于 2014-12-18 15:27
我觉得 如果你一次图片都没找到的话
那就新建一个空项目在里面写一个找桌面图片的 如果找到那就不是插件问 ...

等晚上 从前台开始一步一步试~~~
作者: T星人    时间: 2014-12-18 15:51
学习了~~ 谢谢楼主
作者: wuyunlong516    时间: 2014-12-18 17:15
绑定换成 dm.BindWindowEx(Flash句柄,"gdi2","dx","dx",0)
你调试输出看图片是不是找到了,而是键盘鼠标没动呢?
测试能通过,不代表后台鼠标什么的就能行,这个绑定能成功,但是不起作用我也是遇到过哈.
作者: aeioui    时间: 2014-12-19 10:26
wuyunlong516 发表于 2014-12-18 17:15
绑定换成 dm.BindWindowEx(Flash句柄,"gdi2","dx","dx",0)
你调试输出看图片是不是找到了,而是键盘鼠标没动 ...

谢谢 正在一步一步测试




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