winform程序限制只能打开一个进程_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > winform程序限制只能打开一个进程

winform程序限制只能打开一个进程

 2014/5/23 19:10:11  小睡神  博客园  我要评论(0)
  • 摘要:有很多方案,先来最傻瓜式的:staticclassProgram{///<summary>///应用程序的主入口点。///</summary>[STAThread]staticvoidMain(){if(System.Diagnostics.Process.GetProcessesByName(System.Diagnostics.Process.GetCurrentProcess().ProcessName).Length>1){MessageBox.Show
  • 标签:程序 for 一个 限制 winform

 

有很多方案,先来最傻瓜式的  :
static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            if (System.Diagnostics.Process.GetProcessesByName(System.Diagnostics.Process.GetCurrentProcess().ProcessName).Length > 1)
            { 
                MessageBox.Show("已经有一个运行了");
            }
            else
            {
             
                Application.Run(new  Form1());
            }

        }
    }

 

 

 

 

 

再来一种

static class Program
    {
        [STAThread()]
        public static void Main()
        {
            bool ret;
            System.Threading.Mutex m = new System.Threading.Mutex(true, Application.ProductName, out  ret);
            if (ret)
            {
                //System.Windows.Forms.Application.EnableVisualStyles();  //这两行实现  XP  可视风格
                //System.Windows.Forms.Application.DoEvents();
                System.Windows.Forms.Application.Run(new Form1());
                //  frmMain  为你程序的主窗体,如果是控制台程序不用这句
                m.ReleaseMutex();
            }
            else
            {
                MessageBox.Show(null, "有一个和本程序相同的应用程序已经在运行,请不要同时运行多个本程序。\n\n这个程序即将退出。 ", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                //  提示信息,可以删除。
                Application.Exit();//退出程序
            }
        }
    }

 

上一篇: 微软谈 Office for iPad 设计,展示早期风格界面 下一篇: 没有下一篇了!
发表评论
用户名: 匿名