易语言大漠插件绑定窗口问题

易语言大漠插件绑定窗口问题,第1张

易语言用大漠后台绑定窗口以后,一开始工作就会连启动窗口也给绑定。求解。

下面是源码大概的意思:

版本 2

支持库 dm

支持库 shellEx

程序集 窗口程序集1

程序集变量 A, 整数型

程序集变量 B, 整数型

程序集变量 大漠, 大漠

程序集变量 hwnd

子程序 __启动窗口_创建完毕

大漠创建 ()

如果 (文件是否存在 (取运行目录 () + “\大漠bat”))

运行 (取运行目录 () + “\大漠bat”, 假, 1)

否则

信息框 (“缺少关键文件”, 48, “错误”)

结束 ()

如果结束

A = 注册热键 (_启动窗口取窗口句柄 (), 标签1取窗口句柄 (), 0, #F4键)

B = 注册热键 (_启动窗口取窗口句柄 (), 标签1取窗口句柄 (), 0, #F6键)

子程序 _标签1_反馈事件, 整数型

参数 参数一, 整数型

参数 参数二, 整数型

判断开始 (参数一 = A)

延时 (300)

hwnd = 大漠窗口_取鼠标所指窗口句柄 ()

大漠后台_绑定窗口 (hwnd, “normal”, “dx”, “dx”, 0)

延时 (3000)

默认

判断结束

判断开始 (参数一 = B)

时钟1时钟周期 = 0

大漠后台_解除绑定窗口 ()

默认

判断结束

子程序 _时钟1_周期事件

局部变量 组队人数, 整数型

大漠键鼠_鼠标移动 (113, 92)

延时 (500)

大漠键鼠_鼠标移动 (715, 97)

延时 (500)

子程序 _按钮1_被单击

延时 (300)

时钟1时钟周期 = 1000

子程序 _按钮2_被单击

延时 (300)

结束 ()

不停的读取,赋值组件,还1毫秒的频率,果真有意义么。

高级选择夹1现行子夹 = 取随机数 (1, 300)

编辑框1内容 = 高级选择夹1取子夹名称 (高级选择夹1现行子夹)

--光上面这两句,1毫秒你执行的完么。

大漠插件前台脚本和后台脚本只要转换一下模拟方式就好了,比如dx或者dx2什么的。

具体命令如下:

dm_ret = dmFindPic(x1, y1, x2, y2, pic_name, delta_color,sim, dir,intX, intY)

其中的参数含义如下:

x1 整形数:区域的左上X坐标

y1 整形数:区域的左上Y坐标

x2 整形数:区域的右下X坐标

y2 整形数:区域的右下Y坐标

pic_name 字符串:名,可以是多个,比如;testbmptest2bmptest3bmp;

delta_color 字符串:颜色色偏比如;203040; 表示RGB的色偏分别是20 30 40 (这里是16进制表示)

sim 双精度浮点数:相似度,取值范围01-10

dir 整形数:查找方向 0: 从左到右,从上到下 1: 从左到右,从下到上 2: 从右到左,从上到下 3: 从右到左, 从下到上

intX 变参指针:返回左上角的X坐标

intY 变参指针:返回左上角的Y坐标

大漠插件还是很好用的,祝贺楼主研究成功。

希望对您有帮助。

哎,怎么说你呢,语文理解能力怎么这么差的,我是说,开启线程的时候,创建大漠对象要在子进程创建,你却偏偏在子程序外面创建。你前面:BeginThread 多线程,说明是创建线程了,下面代码才是子程序:

Sub 多线程

Do

Call X

Call 刀轨

Loop

End Sub

在子程序内创建大漠对象,是这样:

Sub 多线程

Set dm = CreateObject("dmdmsoft")

Do

Call X

Call 刀轨

Loop

End Sub

我还说了,你这样做,子程序的代码还是不能后台的,开启线程绑定窗口也要在子程序内绑定。你这几句代码:

dm_ret=dmBindwindow(hwnd,"dx","windows","windows",0)

BeginThread 多线程

dm_ret=dmUnbindwindow()

不会有效果的。我不提的话,后台没效果估计你也不知道什么原因。就算是绑定成功了,有些窗口也不一定支持后台,这还得继续测试。还有你这样写程序的习惯很不好,结构混乱,相信没几个人能看得明白你那几个子程序嵌套调用。如果逻辑出问题了,你自己都很难找原因。程序里面有不少是废话,例如intX=0 And intY=0,i=0,i=1。变量需要的时候才用,不需要的时候少用。你要想写一个好的脚本,按键精灵各方面还得花点时间去学习。

版本 2程序集 窗口程序集1

程序集变量 秒, 整数型

程序集变量 分, 整数型

程序集变量 小时, 整数型

程序集变量 天, 整数型子程序 _时钟1_周期事件秒 = 秒 + 1

如果 (秒 = 60)

分 = 分 + 1

秒 = 0

否则如果结束如果 (分 = 60)

小时 = 小时 + 1

分 = 0

否则如果结束如果 (小时 = 24)

天 = 天 + 1

小时 = 0

否则如果结束 标签1标题 = 到文本 (天) + “天” + 取文本右边 (“0” + 到文本 (小时), 2) + “小时” + 取文本右边 (“0” + 到文本 (分), 2) + “分钟” + 取文本右边 (“0” + 到文本 (秒), 2) + “秒”子程序 _按钮1_被单击时钟1时钟周期 = 0标签1标题 = “0天00小时00分钟00秒”

子程序 _按钮开始_被单击时钟1时钟周期 = 1000子程序 _按钮暂停_被单击时钟1时钟周期 = 0

这样写把

不知道你有没有注册大漠,并创建大漠对象啊

你在脚本开头调用一下这个子程序,并把大漠的两个dll放到附件里,就行了。

我一直都这么用,从没出现过小精灵不能使用大漠的情况

Sub DM注册()

PutAttachment "\plugin","dll"

PutAttachment "\plugin\DM","bmp"

PutAttachment "\plugin\DM","txt"

PutAttachment "\plugin\DM","dmdll"

//↑PutAttachment释放附件

Call PluginRegDllReg("\plugin\DM\dmdll") //注册插件

set dm = createobject("dmdmsoft") //创建大漠 对象

dmSetPath "\plugin\DM" //设置全局路径

TracePrint "版本信息:"&dmVer()

//↑大漠·注册

base_path = dmGetBasePath() //获取dmdll路径

Delay 40

End Sub

以上就是关于易语言大漠插件绑定窗口问题全部的内容,包括:易语言大漠插件绑定窗口问题、易语言,组件卡死的问题、请教一下大漠后台脚本等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10141984.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存