C# 实现单实例程序
原文: C# 实现单实例程序 在我们经常使用的软件中,当我们已经打开后,再次打开时,有的软件不会出现两个。例如有道词典,会将上次的界面显示出来,或者提示我们“该程序已经运行...”。我通过一个简单的C# WPF例子来说明。 首先我们要了解一下线程中的互斥体(Mutex),引用MSDN官方文档解释,这是一个同步基元,可以用于进程间同步。请参考下面的代码: public App() { bool isNewInstance; string appName = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name; Mutex mtx = new Mutex(true, appName, out isNewInstance); if (!isNewInstance) { MessageBox.Show("The app is running now."); Application.Current.Shutdown(); } } 这样就可以实现一个单实例程序。当该程序已经运行一次之后,再运行时会提示我们“The app...


