易语言调用大漠插件后台绑定游戏窗口源码

我们通过易语言调用大漠图色插件,进行后台对游戏窗口的绑是首要的事情,问题是,如何获得句柄,如何判断游戏是否开启,如何保证绑定万无一失,那就的写的逻辑性要强一点,判断要多一点,循环利于的要好一点,在判断游戏是否在线时,使用了时钟组件,而时钟组件调用的事件里有循环,尽管加了处理事(),在没有开启游戏的状态下,仍会造成窗口假死,所以这里启用了线程,使得时钟事件非常顺畅。总之,本课示范了如何更加有效的绑定游戏窗口,在寻找窗口句柄时,用了两种方法,第一是dm.findwindow(),这个命令必须知道游戏窗口的标题,而有的游戏窗口 标题是无法获得,或者是 变化的,所以视频教程示范了第二种方法,采用取进程ID的方法。

511遇见(www.511yj.com)

易语言大漠剑侠情缘绑定游戏

 易语言源码:

.版本 2
.支持库 EThread

.程序集 窗口程序集_启动窗口
.程序集变量 dm, E大漠
.程序集变量 hwnd, 整数型, , , 游戏窗口句柄
.程序集变量 ID数组, 整数型, , "0"

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

' 1、创建大漠对象
dm.创建 ()
' 2、设置大漠全局路径
dm.SetPath (取运行目录 ())
' 3、设置字库
' dm.SetDict (0, “剑侠情缘.txt”)
' 4、防止插件错误提示
dm.SetShowErrorMsg (0)

.子程序 绑定游戏
.局部变量 dm_ret, 整数型

' 2、绑定游戏
.如果 (hwnd > 0)
    dm_ret = dm.BindWindow (hwnd, “dx”, “dx2”, “windows”, 0)
    .如果 (dm_ret = 1)
        标签_信息.标题 = “绑定成功”

    .否则
        标签_信息.标题 = “绑定失败”
    .如果结束

.否则
    信息框 (“请检查是否开启了游戏”, 0, , )
.如果结束


.子程序 _时钟1_周期事件, , , 判断游戏是否开启

启动线程 (&判断游戏开启, , )


.子程序 _按钮_绑定_被单击

绑定游戏 ()


.子程序 判断游戏开启
.局部变量 i, 整数型

' 1、寻找游戏窗口的句柄
i = 0
.判断循环首 (i = 0)

    进程_取ID数组 (“gamefree.exe”, ID数组, )
    .如果 (取数组成员数 (ID数组) > 0)
        hwnd = 进程_ID取窗口句柄 (ID数组 [1], , , )
        .如果真 (hwnd > 0)
            标签_信息.标题 = “游戏开启成功”
            时钟1.时钟周期 = 0
            i = 1


        .如果真结束

    .否则
        标签_信息.标题 = “请开启游戏”
    .如果结束
    处理事件 ()

.判断循环尾 ()

' 
' hwnd = dm.FindWindow (, “剑侠情缘·网络版”)
.' 如果 (hwnd > 0)
    ' 标签_信息.标题 = “游戏开启成功”
    ' 时钟1.时钟周期 = 0
    ' i = 1

.否则
    ' 标签_信息.标题 = “请开启游戏”
    ' 处理事件 ()
.如果结束

' 判断循环尾 ()

原文:易语言大漠剑侠情缘绑定游戏

         511遇见易语言大漠游戏外挂综合教程-易语言大漠

猜你喜欢

转载自blog.csdn.net/zcp528/article/details/106826400