易语言中,如果想实现控制软件多开,应该通过怎样的途径呢?

易语言中,如果想实现控制软件多开,应该通过怎样的途径呢?,第1张

易语言……

不懂。

不过方法应该是通用的。

第一种,遍历进程表,燃悄和计数自身进程的数量。这个是最运芹正统,最方便,最安全的。

第二种,利用网络广播来计数。程皮盯序启动时,发一个广播信号,收到信号的进程给回复。

第三种,在系统中找一个隐秘的地方设置一个信号量。

重点说说第三种,其关键在于隐秘。可能的方法大概有:

A、在系统固定位置写一个文本文件,里面是一个计数,启动时加一,退出时减一。

B、每个实例都在固定位置创建一个临时文件,退出时删除自己的

C、在注册表中指定位置增加一条计数项。

D、绑定某端口。比如:从32450开始,寻找未被绑定的端口……

所有上面这些归类于第三种的方法都有不可靠,易于破解的缺陷。

而且实现起来不见得比前两种难度低。

选择最适合自己的吧。

防止/实现多开的原理:

程序在编程中通常使用互斥API函数如CreatMutexA防止多开。你运行程序,程序会历改在调用进程时检测程序是否已经运行,如果已经运行,则不再调用,世尘返回到已经运行的程序界面,否则启动程序。

实现多开就是把其检测的返回值始终设置为程序未运行状态搜烂禅。

自己制作的话,包括用易语言,需要懂得API调用,非三言两语可说清楚


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12507647.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存