TC官方合作论坛

标题: 写后台脚本,为什么窗口可以遮挡但是不能移到屏幕外? [打印本页]

作者: djzlove129    时间: 2014-5-5 17:14
标题: 写后台脚本,为什么窗口可以遮挡但是不能移到屏幕外?
写后台脚本,为什么游戏窗口可以遮挡但是不能移到屏幕外?遮挡脚本可以运行,但是移到屏幕外就不能找图了?
作者: hwang1126    时间: 2014-5-5 17:20
绑定模式 display 字符串: 屏幕颜色获取方式 取值有以下几种

"normal" : 正常模式,平常我们用的前台截屏模式

"gdi" : gdi模式,用于窗口采用GDI方式刷新时. 此模式占用CPU较大.

"gdi2" : gdi2模式,此模式兼容性较强,但是速度比gdi模式要慢许多,如果gdi模式发现后台不刷新时,可以考虑用gdi2模式.

"dx2" : dx2模式,用于窗口采用dx模式刷新,如果dx方式会出现窗口所在进程崩溃的状况,可以考虑采用这种.采用这种方式要保证窗口有一部分在屏幕外.win7或者vista不需要移动也可后台.此模式占用CPU较大.

"dx3" : dx3模式,同dx2模式,但是如果发现有些窗口后台不刷新时,可以考虑用dx3模式,此模式比dx2模式慢许多. 此模式占用CPU较大.

"dx" : dx模式,等同于BindWindowEx中,display设置的"dx.graphic.2d|dx.graphic.3d",具体参考BindWindowEx

作者: chentaotest    时间: 2014-5-5 17:21
这是你的绑定模式决定的,有些绑定模式可以移动,有些是不可以的,具体你可以看插件绑定模式里面的说明文档
作者: 石中草    时间: 2014-5-5 17:25
把图色模式,一个个试一下,那个好用就用那个
作者: djzlove129    时间: 2014-5-5 17:36
石中草 发表于 2014-5-5 17:25
把图色模式,一个个试一下,那个好用就用那个

所有的模式都试过了,都不行,只要要找的图片,移动出屏幕,就不能找到点击了,我的找图范围是0,0,1440,900 这个范围要不要改大?
作者: 石中草    时间: 2014-5-5 17:56
djzlove129 发表于 2014-5-5 17:36
所有的模式都试过了,都不行,只要要找的图片,移动出屏幕,就不能找到点击了,我的找图范围是0,0,1440,9 ...

能请你把代码复制过来看看么
作者: djzlove129    时间: 2014-5-5 18:11
石中草 发表于 2014-5-5 17:56
能请你把代码复制过来看看么

代码有点长,我就只发绑定的了
#include"杀怪.t"
空间 后台测试
变量 ct
功能 退出_点击()
    辅助.退出()
功能结束

功能 开始_热键()
    变量 intX,intY
    ct.SetPath(辅助.获取资源路径("rc:"))
    解绑 = ct.UnBindWindow()
    如果(解绑==1)
        列表框.插入文本("运行状态","解绑成功",0)
    如果结束
    窗口句柄=窗口.鼠标所在窗口句柄()
    标题=窗口.得到标题(窗口句柄)
    如果(标题=="Unity Web Player")
        列表框.插入文本("运行状态",标题,0)
        辅助.等待(100)
        dm_ret = ct.BindWindow(窗口句柄,"dx","dx","dx",0)
        辅助.等待(100)
        如果(dm_ret==1)
            列表框.插入文本("运行状态","绑定成功",0)
        否则
            辅助.消息框("游戏绑定失败")
        如果结束
    否则
        辅助.消息框("不是游戏窗口")
    如果结束
功能结束

功能 初始化()
    //----------------------- 注册大漠------------------------
    是否成功=辅助.注册插件(辅助.获取资源路径("rc:dm.dll"),真)
    如果(是否成功)
        调试输出("插件注册成功!")
        热键.注册("开始")
        热键.注册("停止")
        热键.注册("隐藏游戏")
    否则
        辅助.退出()
    如果结束
功能结束

功能 停止_热键()
    解绑 = ct.UnBindWindow()
    如果(解绑==1)
        列表框.插入文本("运行状态","解绑成功",0)
    否则
        列表框.插入文本("运行状态","解绑失败",0)
    如果结束
功能结束

功能 按钮0_点击()
    线程.开启("我是杀怪.杀怪","")
功能结束

空间结束
作者: 君凌天下    时间: 2014-5-5 18:26
哥,你绑定的延迟时间太短了,你把它设置成1到2秒才行!!!
作者: djzlove129    时间: 2014-5-5 18:29
君凌天下 发表于 2014-5-5 18:26
哥,你绑定的延迟时间太短了,你把它设置成1到2秒才行!!!

问题是只要窗口不移动到屏幕外面都可以后台啊
作者: 君凌天下    时间: 2014-5-5 18:32
dm_ret = ct.BindWindow(窗口句柄,"dx","dx","dx",0)
这个你看下大漠绑定的帮助文档,后面还要加个东西才可以移动窗口后台正常运行...
作者: 君凌天下    时间: 2014-5-5 18:47
你可以用这个来绑定
BindWindowEx
作者: djzlove129    时间: 2014-5-5 18:52
君凌天下 发表于 2014-5-5 18:47
你可以用这个来绑定
BindWindowEx

这两种绑定方式有什么不同?
作者: chenxiaoman    时间: 2014-5-5 19:37
你可以试试  DX2 模式是否支持 如果支持用这个模式可以 移动到屏幕外。




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