代码改变世界

C#.NET禁止一个程序启动多个实例

2008-03-26 09:20  Virus-BeautyCode  阅读(1712)  评论(1编辑  收藏  举报
在Program.cs中添加如下代码:

          Boolean createdNew; //返回是否赋予了使用线程的互斥体初始所属权
            System.Threading.Mutex instance = new System.Threading.Mutex(true, "MutexName", out createdNew); //同步基元变量
            if (createdNew) //赋予了线程初始所属权,也就是首次使用互斥体
            {
                Application.Run(new Form1()); /s/这句是系统自动写的
                instance.ReleaseMutex();
            }
            else
            {
                MessageBox.Show("已经启动了一个程序,请先退出!","系统提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
                Application.Exit();
            }