精易论坛

标题: 能从子程序修改,让他从模拟器8开始启动,不从1开始启动。 [打印本页]

作者: zhangli9271    时间: 2025-2-22 13:51
标题: 能从子程序修改,让他从模拟器8开始启动,不从1开始启动。
原来是从模拟器1开始启动
想在想修改从模拟器8开始启动,从下面子程序哪里修改可以实现。
  
子程序名返回值类型公开备 注
登录  
参数名类 型参考可空数组备 注
i整数型
变量名类 型静态数组备 注
dmdmsoft 
逻辑值逻辑型 
ret1逻辑型 
ret2整数型 
启动时间日期时间型 
可运行模拟器序号整数型 
游戏句柄整数型 
x整数型 
y整数型 
dm = 大漠多线程 [i].dm
反馈列表信息 (i, 5, “启动游戏”)
dm.UseDict (0)
计次循环首 (3, )
可运行模拟器序号 = 取当前可运行模拟器序号 (i)
调试输出 (“可运行模拟器序号:111”, 可运行模拟器序号)
如果真 (可运行模拟器序号 > 0)
大漠多线程 [i].模拟器序号 = 可运行模拟器序号
ADB_雷电模拟器_设置属性 (全局_adb路径, 可运行模拟器序号, “960”, “540”, “160”, “2”, “2048”)
ret1 = 运行 (全局_模拟器路径 + “ ”“index=”到文本 (可运行模拟器序号), 假, )  ' "D:\Changzhi\dnplayer2\dnplayer.exe" index=1|
辅助延时 (7000, )
如果真 (ret1 = )
跳出循环 ()


计次循环尾 ()
如果真 (ret1 = )
全局_登录状态 = 1
判断循环首 ()
判断 (全局_登录状态 = 1)
游戏句柄 = 取模拟器游戏层句柄 (i, 可运行模拟器序号)
调试输出 (“游戏句柄”到文本 (i), 游戏句柄)
如果真 (游戏句柄 > 0)
大漠多线程 [i].游戏句柄 = 游戏句柄
ret2 = dm.BindWindowEx (游戏句柄, “dx.graphic.opengl”, “dx.mouse.position.lock.api”, “windows”, “”, 0)
辅助延时 (500, )
如果真 (ret2 = 1)
调试输出 (“绑定成功”)
' 如果 (启动线程 (&窗口监控线程, i, 大漠多线程 [i].监控句柄))  ' 这是第二种启动窗口监控线程的方式,在绑定以后启动窗口监控线程,也可以放到登录完成以后,看自己写法来。
' 调试输出 (“监控线程” + 到文本 (i) + “启动成功”)
' 调试输出 (“监控线程” + 到文本 (i) + “启动失败”)
dm.MoveWindow (大漠多线程 [i].窗口句柄, 0, 0)
全局_登录状态 = 2
反馈列表信息 (i, 5, “绑定成功”)
SetEvent (登录事件句柄)  ' 给登录事件句柄一个信号,这里相当于控制何时开启下一个窗口的开关,可以放在不同的位置来决定何时开启下一条线程。
' dm.Capture (0, 0, 800, 600, 取运行目录 () + “\1.bmp”)

判断 (全局_登录状态 = 2)
登录游戏 (i)
' 全局_登录状态 = “登录成功”
辅助延时 (1000, )
跳出循环 ()


辅助延时 (1000, )
调试输出 (“登录中”, 全局_登录状态)
判断循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库


  
子程序名返回值类型公开备 注
取当前可运行模拟器序号整数型 
参数名类 型参考可空数组备 注
i整数型
变量名类 型静态数组备 注
dmdmsoft 
a整数型 
窗口句柄整数型 
dm = 大漠多线程 [i].dm
计次循环首 (全局_多开数量, a)
窗口句柄 = 窗口_取句柄 (, , “LSPlayerMainFrame”, “雷神模拟器-”到文本 (a))
调试输出 (窗口句柄)
如果真 (窗口句柄 = 0)
返回 (a)

计次循环尾 ()
返回 (0)


i支持库列表   支持库注释   
spec特殊功能支持库


.版本 2

.子程序 取模拟器游戏层句柄, 整数型
.参数 i, 整数型
.参数 可运行模拟器序号, 整数型
.局部变量 dm, dmsoft
.局部变量 窗口句柄, 整数型
.局部变量 游戏句柄, 整数型

dm = 大漠多线程 .dm
窗口句柄 = 窗口_取句柄 (, , “LSPlayerMainFrame”, “雷神模拟器-” + 到文本 (可运行模拟器序号))
.如果真 (窗口句柄 > 0)
    反馈列表信息 (i, 8, “模拟器” + 到文本 (可运行模拟器序号))
    大漠多线程 .窗口句柄 = 窗口句柄
    大漠多线程 .进程ID = 窗口_句柄取进程ID (窗口句柄)
    游戏句柄 = dm.GetWindow (窗口句柄, 1)
    .如果真 (游戏句柄 > 0)
        返回 (游戏句柄)
    .如果真结束

.如果真结束
返回 (0)



作者: zhangli9271    时间: 2025-2-22 13:52
  
子程序名返回值类型公开备 注
取模拟器游戏层句柄整数型 
参数名类 型参考可空数组备 注
i整数型
可运行模拟器序号整数型
变量名类 型静态数组备 注
dmdmsoft 
窗口句柄整数型 
游戏句柄整数型 
dm = 大漠多线程 [i].dm
窗口句柄 = 窗口_取句柄 (, , “LSPlayerMainFrame”, “雷神模拟器-”到文本 (可运行模拟器序号))
如果真 (窗口句柄 > 0)
反馈列表信息 (i, 8, “模拟器”到文本 (可运行模拟器序号))
大漠多线程 [i].窗口句柄 = 窗口句柄
大漠多线程 [i].进程ID = 窗口_句柄取进程ID (窗口句柄)
游戏句柄 = dm.GetWindow (窗口句柄, 1)
如果真 (游戏句柄 > 0)
返回 (游戏句柄)

返回 (0)


作者: qianfuquan886    时间: 2025-3-4 16:37





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4