这里只以按键8作为例子,其它语言都类似。
// 首先打包dm.dll和RegDll.dll到附件,当然如果你还有其它资源(字库,图片等)也可以一并打包
// 这个need_ver作为本脚本需要使用的插件版本. 如果要换插件时,记得更改这个值.
need_ver = "3.1233"
// 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dll
set ws=createobject("Wscript.Shell")
ws.run "regsvr32 atl.dll /s"
set ws=nothing
// 释放附件>>>>>>>>>>>>>>>>>>>
// 这里选择c盘的test_game作为插件的基本目录 也就是SetPath对应的目录。所以所有资源都释放在此目录.
PutAttachment "c:\test_game","*.*"
// 这里要用到RegDll来注册插件,所以必须释放到Plugin. 但是切记不能把dm.dll释放到Plugin.那会导致插件失效.
PutAttachment ".\Plugin" ,"RegDll.dll"
// 插件注册开始>>>>>>>>>>>>>>>>>>>
// 下面开始注册插件,先尝试用RegDll来注册.这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
Call Plugin.RegDll.Reg("c:\test_game\dm.dll")
// 这里判断是否注册成功
set dm = createobject("dm.dmsoft")
ver = dm.Ver()
if ver <> need_ver then
// 先释放先前创建的dm
set dm = nothing
// 再尝试用regsvr32 来注册. 这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
set ws=createobject("Wscript.Shell")
ws.run "regsvr32 c:\test_game\dm.dll /s"
set ws=nothing
Delay 1500
// 再判断插件是否注册成功
set dm = createobject("dm.dmsoft")
ver = dm.Ver()
if ver <> need_ver then
// 这时,已经确认插件注册失败了。 弹出一些调试信息,以供分析.
messagebox "插件版本错误,当前使用的版本是:"&ver&",插件所在目录是:"&dm.GetBasePath()
messagebox "请关闭程序,重新打开本程序再尝试"
endscript
end if
end if
// 插件注册结束<<<<<<<<<<<<<<<
// 收费注册开始,简单游作者不需要这一段(加了也没关系,不会扣费),非简单游平台付费作者必须添加>>>>>>>>>>>>>>>
// 当然,如果是在按键精灵上使用,这段代码是可以注释掉。大部分功能可以直接在按键平台使用。无须注册.
// ok,这里已经确认插件注册成功,并且创建了对象,下面开始注册收费服务.
// 当然这里也可以使用高级的RegEx函数.
dm_ret = dm.Reg("abcdefg","0001") // abcdefg是您的注册码. 在大漠插件网站后台可以直接获取.
if dm_ret <> 1 then
messagebox "注册失败,返回值是:"&dm_ret
endscript
end if
// 收费注册结束<<<<<<<<<<<<<<<<
//这里设置插件基本目录
dm.SetPath "c:\test_game"
// 获取句柄
hwnd = dm.GetMousePointWindow()
// 绑定
dm_ret = dm.BindWindow(hwnd,"dx","dx","dx",0)
// 检测绑定返回值
if dm_ret = 0 then
last_error = dm.GetLastError()
// 如果是WIN7 VISTA WIN2008系统,检测当前系统是否有开启UAC
if dm.GetOsType() = 3 then
// 有开启UAC的话,尝试关闭
if dm.CheckUAC() = 1 then
if dm.SetUAC(0) = 1 then
// 关闭UAC之后,必须重启系统才可以生效
messagebox "已经关闭系统UAC设置,必须重启系统才可以生效。点击确定重启系统"
dm.ExitOs 2
Delay 2000
endscript
end if
end if
end if
// 具体错误码的含义,可以参考函数GetLastError的说明.
messagebox "绑定失败,错误码是:"&last_error
messagebox "如果确定关闭了UAC,很可能是系统的防火墙拦截插件,请暂时关闭360等安全防火墙再尝试"
endscript
end if
// 下面就是脚本部分了 省略
// 下面这是脚本结束时执行的部分
Sub OnScriptExit()
dm.UnBindWindow
End Sub
// 结束
另外特别要注意,不要把dm.dll释放到Plugin目录,那样会导致插件在
更新版本时出现注册失败的情况。特别是在简单游平台.建议释放到C盘的
某个目录比如Test目录等.
另外,别的高级语言如何调用dm.dll,请百度XXXX语言如何调用Active X 对象.
目前经过测试的语言可以正常调用的有vc6 vb6 delphi 易,别的语言想必也不会有问题.
从2.1118B版本之后,大漠插件将禁止释放到Plugin目录,以避免一系列升级产生的BUG!
同时,也禁止用Plugin方式来调用插件,那个方式也是非常不安全的.
请大家严格按照vbs的语法来使用插件.
如果是多线程使用大漠插件,必须每个线程都要创建一个dm对象.
注册过程脚本开始时,执行一次就行了,没必要每个线程都执行.
大漠插件最新版本
大漠最新版本呢已经无法下载了,大漠虽然论坛上面说,和按键深度合作,其实都是假的,现在大漠只照顾月消费上千的人,才可以获得最新版本,才可以进大漠高级VIP群.无论你是使用按键,还是其他语言
没办法,我找到了一个 天使插件 和大漠功能一模一样,TC那边出的,楼主可以去搜搜.
大漠插件有什么用?
大漠综合插件(dm.dll)采用vc6.0编写,是一款集【前后台,文字识别,图色,键鼠,窗口,内存,DX,Call】等功能于一身的综合插件。主要用于按键精灵、简单游、易语言等辅助制作工具,具有识别速度超级快的特点! 采用COM接口编写,适用于所有语言调用。
现在,大漠插件还有天使插件那个功能全面
大漠插件注册的方法:
1.首先打开大漠插件,然后点击下方的大漠插件盒子的图标。
2.打开大漠插件之后,点击右上角的登录,注册。
3.打开用户注册对话框之,依次填写好用户名、密码和验证码,点击注册。
4.信息提交后,刚输入的信息不见了,而且还停留在这个对话框,但要看左下角,出现了“注册成功”四个字,就可以关闭这个了。
5.再回到大漠插件盒子那里,把鼠标移到刚刚登录的按钮那里,发现已经变了,已经显示登录了刚刚注册的账号了。
大漠插件多开问题
多线程就行了。不知道多线程,你先自己了解。更多
多线程有多脚本控制一个窗口和单脚本控制多窗口,我只想后面一种。但是看大漠接口说明,就是不明白怎么弄。想找个例子脚本。
是一个线程控制一个窗口,只不过窗口句柄不一样,大漠教程把问题写得复杂了,你看给你例子,你一下子就明白了,例子如下:
Dimenv HwndEx
Dim Hwnd(2) //根据你多开个数分配窗口句柄数组
//这里写你获取窗口句柄代码,我就随便赋值
Hwnd(0) = 0 : Hwnd(1) = 1 : Hwnd(2) = 2
//主程序多开
For i = 0 To 2
HwndEx = Hwnd(i)
BeginThread YourFunction(HwndEx)
Delay 100 //要适当延时,要不会出错,不信你去掉延时试试
Next
Sub YourFunction(HwndEx)
MessageBox HwndEx
End Sub
可以留个邮箱吗?我把我脚本源码发给你,你帮我看看。(我把你上面的命令加用到我脚本里,没成功。可能我用的方法不对。)
你不要直接从百度这里复制代码到小精灵脚本编辑那里,因为编码方式不一样,有可能出错,最好自己写一遍代码,代码是没问题的,你在理解我给你代码基础上再应用。
获取窗口句柄命令用哪个?你给的代码是加在哪里的,加在注册大漠后面吗?
我给你的代码根本没用到大漠插件,我只是给你一个传参数的例子。你如果不理解我的代码,那我也没办法了,这是最简单的多开了。
转载请注明出处51数据库 » 大漠软件 如何使用大漠插件