C# 禁止同一个程序运行多次 - 孤单的蜗牛的日志 - 网易博客
来源:百度文库 编辑:神马文学网 时间:2024/05/24 02:25:01
C# 禁止同一个程序运行多次
Asp.net 2009-06-07 19:23:57 阅读28 评论0 字号:大中小 订阅
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Threading;//添加线程命名空间
namespace Memorandum
{
static class Program
{
///
/// 应用程序的主入口点。
///
[STAThread]
static void Main()
{
Boolean mutexWasCreated;//声明一个Boolean值,用于下面的Out
//true 为是否给予当前这个线程互斥的功能, true为是, false为否,也就是说是否不允许两个相同名称的线程存在
//可以给这个程序的线程取一个名字,可以用自己的程序的空间名称来起,这样不会重复
//mutexWasCreated,如果指定的命名互斥系统已经存在,返回false,不存在返回true
Mutex myMutex = new Mutex(true, "线程名称", out mutexWasCreated);
if (!mutexWasCreated)//对返回值进行判断
{
MessageBox.Show("程序已处于运行中,请不要重复运行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Stop);
Application.Exit();//退出系统
return;//因为Application.Exit();会处理完消息系统才退出程序,所以直接retrun出去让他结束
}
//后面执行的代码.....
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}