
static class Program{ [STAThread]static void Main(){bool createNewusing (Mutex mutex = new Mutex(true, Application.ProductName, out createNew)){if (createNew){Application.EnableVisualStyles() Application.SetCompatibleTextRenderingDefault(false) Application.Run(new Form1()) } else{// 程序已经运行,显示提示后退出MessageBox.Show("应用程序已经运行!") }}}}
楼上的回答 调用dll命令的,太复杂,我有简单的。
图片看不清楚,可以复制以下内容。
.版本 2
.支持库 eAPI
.子程序 进程是否重复, 逻辑型, 公开, 如果相同的进程名称有2个或以上,则返回 真,1个或以下则返回 假。
.参数 待检测进程, 文本型, , 进程名称,例:"QQ.exe"
.局部变量 进程数组, 进程信息, , "0"
.局部变量 n, 整数型
.局部变量 判断重复, 整数型
进程数组 = 取系统进程列表 ()
.计次循环首 (取数组成员数 (进程数组), n)
.如果真 (到小写 (进程数组 [n].进程名称) = 到小写 (待检测进程))
判断重复 = 判断重复 + 1
.如果真 (判断重复 ≥ 2)
返回 (真)
.如果真结束
.如果真结束
处理事件 ()
.计次循环尾 ()
返回 (假)
––––––––––
调用子程序例子:
如果真(进程是否重复(“本软件名称.exe”)=真)
信息框("本程序正在运行中,禁止重复运行",0,,)
返回()
如果真结束
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)