系统自动重启的问题 自动重启互斥锁 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 bool runone; System.Threading.Mutex run = new System.Threading.Mutex(true, "进程名称", out runone); if (runone) { run.ReleaseMutex(); Application.EnableVisualStyles();//系统自带 Application.SetCompatibleTextRenderingDefault(false);//系统自带 Application.Run(new MainForm());//系统自带 } else { MessageBox.Show("此软件已经运行,请勿重复打开!", "出错了!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } 是存在这种可能: 重启的程序可能放弃运行,因为侦测到旧的程序还在运行(旧程序正在退出,但Mutex还没有释放)。解决方法之一就是改写启动时对mutex的测试,使他能重试一定时间(比如3秒)后才推出。解决方法之二就是在调用Application.Exit之前,放弃Mutex。 可以使用 Application.Restart(); System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Location); :这是启动一个新的程序吧。Application.Exit(); :会关闭自身。并且顺带关闭由他实例化的所有程序。 我只能理解这么多。 控件 ComboBox 应用时 求问题解决! 【求助!】C#怎么实现字符串循环右移啊!! C# asp.net 菜鸟用c#做winform程序,窗体上放了好多的textbox控件,用户让我弄成按回车就模拟tab键。。。。 OracleConnection.Open()问题 请教comboBox的用法 新手问个初级问题:怎么做一个简单的本地数据浏览表格? 简单地关闭进程的程序,为何会出错? 请教各位大虾,这个方法怎么写 请教错误提示:VC软件包不可用或未注册? 中秋大酬宾 积分大放送! log4net的UdpAppender怎么用!
System.Threading.Mutex run = new System.Threading.Mutex(true, "进程名称", out runone);
if (runone)
{
run.ReleaseMutex();
Application.EnableVisualStyles();//系统自带
Application.SetCompatibleTextRenderingDefault(false);//系统自带
Application.Run(new MainForm());//系统自带
}
else
{
MessageBox.Show("此软件已经运行,请勿重复打开!", "出错了!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
解决方法之一就是改写启动时对mutex的测试,使他能重试一定时间(比如3秒)后才推出。
解决方法之二就是在调用Application.Exit之前,放弃Mutex。
Application.Restart();