[插件]ahk大漠插件的使用

初始化大漠对象:
gosub, 检测大漠插件
gosub, 创建大漠对象
return

检测大漠插件:
IfNotExist,dm.dll
FileCopy, C:\Users\wcc\Desktop\dm.dll,1 ;大漠插件
IfNotExist,QQ斗地主字库.txt
FileCopy,%A_ScriptDir%\Support_File\QQ斗地主字库.txt,QQ斗地主字库.txt,1 ;字库
return

创建大漠对象:
RunWait,regsvr32 /s "C:\Users\wcc\Desktop\dm.dll",,Hide ;注册大漠的dll
dm:=ComObjCreate("dm.dmsoft")
if (dm.ver()="") ;检测大漠对象是否创建成功
{
MsgBox, 262144, 错误, 创建对象失败,检查系统是否禁用了vbs脚本权限!`n`n 你也可以联系作者寻求帮助!
ExitApp
}
dm.SetDict(0,A_WorkingDir . "\QQ斗地主字库.txt") ;设置字库文件路径
;~ dm.SetPath(A_WorkingDir) ;斗地主中用不到图片识别,所以这句没用
if (dm.GetScreenDepth()<>32) ;色深必须为32位
dm.SetScreen(A_ScreenWidth,A_ScreenHeight,32)
dm.EnableDisplayDebug(调试)
dm.SetShowErrorMsg(0)
return

;现在还没有寻找功能,所以自己用窗口工具得到Hwnd,然后填入下方
寻找并绑定斗地主窗口:
IfWinNotExist, ahk_id %QQ斗地主Hwnd%
{
MsgBox, 4112, 未找到斗地主窗口, 自行获取斗地主窗口的Hwnd`,然后填入 "QQ斗地主记牌器.ahk" 第28行。`r`n更多说明请打开源码查看其中注释。
ExitApp
}
dm.BindWindow(QQ斗地主Hwnd,"gdi","normal","normal",0) ;设置大漠绑定窗口方式. gdi方式可在画面被遮挡时,依然正确识图. 通俗的说,就是后台识图
return

;程序退出时要做的事
;必须以ExitApp作为结束语句. 使用return或者别的结束语句,程序无法退出
善后:
dm.UnBindWindow() ;窗口解绑
RunWait,regsvr32 /u /s "%A_WorkingDir%\dm.dll",,Hide ;dll文件反注册
FileDelete,QQ斗地主字库.txt ;删除字库文件
FileDelete,dm.dll ;删除大漠的dll. 实际上,这个文件删不掉,不过好在它的工作目录是临时文件夹,所以也就无所谓了
ExitApp
return

==================
dm:=ComObjCreate("dm.dmsoft") ;此处:=表示表达式返回值赋值给变量dm
ver := dm.ver() ;调用大漠的插件版本查询函数,只会出现两种情况返回值为空及返回值为版本号。
if (ver) ;如果版本号存在
MsgBox,,,注册成功!,1
else
MsgBox,,,注册失败!`n请检查ahk版本及大漠是否已注册到系统`n请参考大漠接口说明-常见问题-创建对象失败怎么办,4
;记得要用32位的ahk哟~~ 全路径+ .ahk指向

给TA捐赠
共{{data.count}}人
人已捐赠
其他

[GUI]窗体控件TreeVIEW实例

2017-2-21 12:52:40

其他

[编程][GUI]AHK如何生成一个超级漂亮的萌按钮

2017-2-21 13:02:39

3 条回复 A文章作者 M管理员
  1. 铭青

    这个插件和按键精灵的大漠插件相比怎么样?

  2. 菜鸡

    大神,请问ahk中调用大漠插件 有些方法 比如找图方法里输出型参数怎么能取到值

    • aahk

      这个网站论坛里随便一搜索就是一堆大漠插件找图取值。

个人中心
购物车
优惠劵
有新私信 私信列表
搜索