易语言循环判断游戏是否运行,请高人解决 尽量少占内存,200分

2025-02-24 18:31:13
推荐回答(5个)
回答1:

没必要使用计次循环首,因为时钟周期本来就是循环的了
可以先判断句柄是否有效,然后才继续取句柄这样会更好。

.版本 2
.程序集 窗口程序集1
.程序集变量 句柄1, 整数型
.程序集变量 句柄2, 整数型
.子程序 __启动窗口_创建完毕
句柄1 = 取句柄 (“Client.exe”, “QQTangWinClass”, “314457834 √”)
句柄2 = 取句柄 (“Client.exe”, “QQTangWinClass”, “13962949 √”)

.子程序 _时钟1_周期事件
.如果 (句柄是否有效 (句柄1) = 假)
句柄1 = 取句柄 (“Client.exe”, “QQTangWinClass”, “314457834 √”)
.否则
播放音乐 (#声音1, )
.如果结束

.如果 (句柄是否有效 (句柄2) = 假)
句柄2 = 取句柄 (“Client.exe”, “QQTangWinClass”, “13962949 √”)
.否则
播放音乐 (#声音1, )
.如果结束

回答2:

1.利用判断进程是否存在的方法判断吧
.版本 2
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
时钟1.时钟周期 = 5000
.子程序 _时钟1_周期事件
.判断开始 (进程是否存在 (“Client.exe”) = 真)
_启动窗口.标题 = “进程存在”
.默认
_启动窗口.标题 = “进程不存在”

2.利用句柄的方法

.版本 2
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
时钟1.时钟周期 = 5000
.子程序 _时钟1_周期事件
.判断开始 (取句柄 (“Client.exe”, “QQTangWinClass”, “314457834 √”) ≠ 0)
_启动窗口.标题 = “窗口314457834 √存在”
.判断 (取句柄 (“Client.exe”, “QQTangWinClass”, “13962949 √”) ≠ 0)
_启动窗口.标题 = “窗口13962949 √存在”
.默认

回答3:

少占内存:
在"时钟1.时钟周期 = 5000"后面添加:
_启动窗口.可视 = 假
并添加事件:
.版本 2
.子程序 __启动窗口_空闲, 逻辑型
.参数 已空闲时间, 整数型
-----------------------------------------------
当条件成立时再显示主窗口即可

回答4:

占内存最少代码也是最少

.子程序 _时钟1_周期事件
ID = 进程是否存在 (“PlantsVsZombies.exe”)
.如果 (ID = 真)
标签1.标题 = “游戏已运行”
.否则
标签1.标题 = “游戏未运行”
.如果结束

如果看不懂可以问我

回答5:

楼上两个家伙,你们写弄多代码,我想,你们自己看着也觉得乱七八糟的吧,看我的,简洁明了,绝多占内存少!举个例子:

.版本 2
.支持库 じ☆ve Hebe
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
时钟1.时钟周期 = 100
.子程序 _时钟1_周期事件
.判断开始 (进程是否存在 (“某某游戏名.exe”) = 真)
信息框 (“该游戏已运行”, 0, )
.默认
信息框 (“该游戏未运行”, 0, )