易语言怎么防止重复运行?高手请进,菜鸟就免了。

2025-01-04 23:45:00
推荐回答(5个)
回答1:

给你DLL会用么
------------------------
.版本 2

.DLL命令 创建事件同步对象, , , "CreateEventA"
.参数 lpEventAttributes, 整数型
.参数 bManualReset, 逻辑型
.参数 bInitialState, 逻辑型
.参数 lpName, 文本型

.DLL命令 打开事件同步对象, 整数型, , "OpenEventA"
.参数 dwDesiredAccess, 整数型
.参数 bInheritHandle, 逻辑型
.参数 lpName, 文本型
----------------------------------------------
.版本 2

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

.如果真 (打开事件同步对象 (2031619, 假, “myappname”) ≠ 0) ' "myappname"可以是任何文本,但是最好要长一点以保证和系统中已有其他事件对象的名称不相冲突。
信息框 (“不能重复运行本程序!”, 0, )
销毁 ()
返回 ()
.如果真结束

创建事件同步对象 (0, 假, 假, “myappname”)

回答2:

插入dll命令:
.版本 2

.DLL命令 创建事件同步对象, , , "CreateEventA"
.参数 lpEventAttributes, 整数型
.参数 bManualReset, 逻辑型
.参数 bInitialState, 逻辑型
.参数 lpName, 文本型

.DLL命令 打开事件同步对象, 整数型, , "OpenEventA"
.参数 dwDesiredAccess, 整数型
.参数 bInheritHandle, 逻辑型
.参数 lpName, 文本型
----------------------------------------------
接下来的是窗口程序集代码

.版本 2

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

.如果真 (打开事件同步对象 (2031619, 假, “myappname”) ≠ 0) ' "myappname"可以是任何文本,但是最好要长一点以保证和系统中已有其他事件对象的名称不相冲突。
信息框 (“不能重复运行本程序!”, 0, )
销毁 ()
返回 ()
.如果真结束

创建事件同步对象 (0, 假, 假, “myappname”)

回答3:

判断进程是否存在。你帮程序的进程名改下就行、
判断进程是否存在、存在就提示程序已运行。未存在则运行

回答4:

使用单一实例

回答5:

asdfsadf