- 小学一年级
- 3010342
- 2120
- 0
- 359 朵
- 8864 个
- 390 个
- 54940
- 2015-01-15
|
1#
t
T
发表于 2015-06-15 15:42
|
|只看楼主
本帖最后由 66球 于 2015-6-16 09:54 编辑 后台脚本单开变多开 So—Easy
我们现在常说的脚本多开主要是通过后台+多线程来实现的,但是经常发现有些小伙伴对多线程不大了解,好不容易写了一个后台的脚本出来,却不知道如何把后台单开脚本改成多开的,于是小编这次去查阅了一些资料,由易而难的整合了下目前按键实现多开的比较传统的几种方法分享给大家,可能不少童鞋都知道了,但是相信对于新手还是挺有帮助的 |
这种方法就是在脚本编辑界面左边的脚本属性设置里,把“禁止重复运行”取消勾选,这样把脚本制作成免费小精灵后就可以重复启动了,按一次启动热键就会启动一次脚本,实现了多开,如图所示
- 您所在的用户组无法下载或查看附件
优点:超级简单、无需修改任何代码、轻轻一点即可实现多开,特别适合新手
缺点:如果要每个窗口不同设置,需要在启动前进行修改保存再启动,设置上比较繁琐,容易弄乱,且单停也需要修改停止热键后启动来区分
直接写好一个单开的后台运行脚本,然后新建一个脚本把源码复制过去或者导出q文件到其他地方再添加,启动与停止热键修改不一样,集合打包生成一个小精灵里使用即可(商业独立QUI版本的小精灵同样可以这样) 打包后界面是这样的,会以多标签的模式显示,可以相互切换设置界面
- 您所在的用户组无法下载或查看附件
优点:相对来讲也较为简单方便快捷,因为界面分开显示,能较直观的看出每个窗口执行的功能,另外通过分别设置不同的停止热键就可以实现多开单停效果
缺点:每个脚本界面都要分别设置不同的启动、停止热键,也较为繁琐,另外受环境变量的影响相互间可能会存在冲突的情况,建议尽量用全局变量不要用环境变量
这种方法是指在单一脚本中,通过特定条件(如标题、类名等)进行窗口遍历,一次性找到所有符合条件的窗口句柄,默认 以"|"号隔开存入数组中,然后通过分割句柄数组,为每一个窗口开设一个线程,即一键启动多窗口同时运行
相关记事本代码例子可参考: 【院刊】-【201412期】多线程多开脚本如何实现?
优点:方便、快捷,脚本自动判断开了几个要运行的窗口,多个窗口可以一键启动,不需要一个个去点 缺点:有新增窗口时必须先停止脚本后再启动,且每个游戏窗口通常只能执行同样的功能,如果要执行不同的功能,则脚本相对会比较复杂
目前稳定的后台多开脚本通常都是用这种方法,这种方法是把脚本要执行的代码完全写成一个单线程,然后通过循环等待按键,每按一次设定好的启动线程的键,则获取鼠标指向的窗口句柄,开始在这个窗口句柄里运行脚本
以记事本多窗口输入为例代码:- Dim hwnds(),线程ID(),i
- i=0
- Do
- Key = WaitKey
- If key = 118 Then //按f8启动
- Redim Preserve hwnds(i),线程ID(i)
- Hwnds(i) = Plugin.Window.MousePoint()
- 线程ID(i) = BeginThread(测试线程)
- TracePrint join(hwnds,"|")
- i=i+1
- End If
- If key = 119 Then//按f9单停
- Hwnd = Plugin.Window.MousePoint()
- For w = 0 To i-1
- If Hwnds(w) = Hwnd Then
- StopThread 线程ID(w)
- End If
- Next
- End If
- Loop
- Sub 测试线程//这里写脚本要执行功能主程序
- Hwnd = Plugin.Window.MousePoint()
- Delay 100
- Do
- Call Plugin.Window.SendString(Hwnd, "测试")
- Delay 1000
- Call Plugin.Window.SendKeyPress(Hwnd, 13)
- Delay 1000
- Loop
- End Sub
复制代码 基于类似此种方法的大漠后台多窗口切换绑定可参考 【院刊】-【201412期】不会用多线程?单线程也可以操作多窗口
优点:灵活,支持实时新增窗口启动,多窗口可切换不同配置启动,可实现完美单停 多线程整体缺点:1.多线程命令属于高级命令功能,不推荐新手使用 2.目前按键多线程技术并不是很成熟,特别是运行时间久了容易出现异常情况
目前关于按键后台脚本多开方法主要是这几种,就简单介绍到这里,如果有新方法欢迎回帖补充,有写错的地方,欢迎纠正
相关院刊:
【院刊】-【201412期】多线程多开脚本如何实现? 【院刊】-【201412期】不会用多线程?单线程也可以操作多窗口
院刊目录 showtopic.aspx?topicid=549014&forumpage=1&page=1
谢谢大家阅读,记得给小编送支花花 ! 顺手点个赞
|
|