日期:2014-05-18  浏览次数:20933 次

我的好几个.net 程序不能同时运行
几个.net程序不是同一个项目工程,每个main函数都加了以下代码,以防止程序重复打开,可加上后,如果第一个项目打开后,第二个项目就打不开了,第二个项目打开后,第一个就打不开了.求高手
  private static Mutex mutex;
  [STAThread]
  static void Main()
  {
  Application.EnableVisualStyles();
  Application.SetCompatibleTextRenderingDefault(false);
  Form1 login = new Form1();//登录 
  login.ShowDialog();
  mutex = new Mutex(true, "撒黄");
  if ((mutex.WaitOne(0, false)) & (Form1.Canlogin))
  {
  login.Close();

  Application.Run(new frmmain());
  }
  }

------解决方案--------------------
将第二个项目中的
撒黄
换成为 
撒黄2
------解决方案--------------------
楼上一语中的。
MUTEX是全操作系统范围有效的
------解决方案--------------------
已命名的系统互斥体在整个操作系统中都可见,可用于同步进程活动
------解决方案--------------------
只会copy代码的人常见这种错误。