按键精灵 大漠多线程 重复调用子程序 问题

按键精灵 大漠多线程 重复调用子程序 问题,第1张

问题就出在这句

启动线程2 = BeginThread(XC2)

多线程不应该改变量闹模乎名液悉

应该改码局为

ID2 = BeginThread (XC2)

set ws=createobject("Wscript.Shell")

ws.run "regsvr32 c:\xl_game\dm.dll /s"

set ws=nothing

Delay 1500

//前面是注册大漠插件,只要打包 dm.dll 到附件就好了或丛

set dm = createobject("dm.dmsoft")

//这里是创建大漠对象

hwnd = dm.GetMousePointWindow()

//这是获取鼠标指定窗口句柄

dm_ret = dm.BindWindow(hwnd,"dx","windows","dx",0)

Delay 1500

//这里是绑定窗口

Do

脚本内容

LOOP

Sub OnScriptExit()

dm_ret = dm.UnBindWindow()

End Sub

//注埋团如意一点,绑定窗口后,在程序的末尾必须加上这段弯启,这是解除绑定窗口

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

Sub 多线程

Do

Call X

Call 刀轨

Loop

End Sub

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

Sub 多线程

Set dm = CreateObject("dm.dmsoft")

Do

Call X

Call 刀轨

Loop

End Sub

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

dm_ret=dm.Bindwindow(hwnd,"dx","windows","windows",0)

BeginThread 多线埋森程

dm_ret=dm.Unbindwindow()

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


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

原文地址: http://outofmemory.cn/yw/12346566.html

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

发表评论

登录后才能评论

评论列表(0条)

保存