|
程序_禁止重复运行()这个命令在关闭到托盘以后,获取不到句柄,自己尝试了一下,在原来的程序_禁止重复运行()代码中,不使用应用取句柄这种获取方式,而是判断上次正常运行后是否配置中有句柄配置,直接显示出,这个是我自己写的例子,希望能改进把配置在内存中或者哪里最好,配置文件写出读取觉得有点麻烦+.+模块代码↓
|
程序_禁止重复运行_使用 | | | |
标识文本 | 文本型 | | | | 是否弹出信息框提示 | 逻辑型 | | | | 消息框提示文本 | 文本型 | | | | 消息框提示图标 | 整数型 | | | | 是否前端显示程序 | 逻辑型 | | | | 挂接事件 | 子程序指针 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_句柄 | 整数型 | | | hEvent | 整数型 | | | 如果真 (标识文本 = “”)标识文本 = 校验_取md5 (到字节集 (“你懒得输入,我就写死,略略”)) hEvent = OpenEventA ( #EVENT_ALL_ACCESS, 假, 标识文本)如果真 (hEvent ≠ #NULL )如果真 (是否为空 (挂接事件 ) = 假)调用子程序_ (到整数 (挂接事件 ), , , , , , , , , , , , , , , )如果真 (是否弹出信息框提示 )如果真 (是否为空 (消息框提示文本 )) 消息框提示文本 = “对不起,该进程已打开!”信息框 (消息框提示文本, 消息框提示图标, “友情提醒:”, )如果真 (是否前端显示程序 )如果 (程序_禁止重复运行_读取 () ≠ 0 )局_句柄 = 程序_禁止重复运行_读取 ()局_句柄 = 进程_名取句柄 (取执行文件名 ()) 如果真 (IsWindowVisible (局_句柄 ) = 假)窗口_强制显示 (局_句柄, 假)如果真 (窗口_是否最小化 (局_句柄 )) 窗口_还原 (局_句柄 )窗口_激活 (局_句柄)结束 ()CreateEvent ( #NULL, 假, 假, 标识文本)写配置项 (取运行目录 () + “\config.ini”, “防止多开”, “上次运行的句柄”, 到文本 (窗口句柄 )) 返回 (到整数 (读配置项 (取运行目录 () + “\config.ini”, “防止多开”, “上次运行的句柄”, )) )
使用例子↓
|
评分
-
查看全部评分
|