本文最后更新于 234 天前,其中的信息可能已经有所发展或是发生改变。
WinForm
private static Mutex mutex = new Mutex(true, Application.ProductName);
[STAThread]
static void Main()
{
if (mutex.WaitOne(TimeSpan.Zero, true))
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
mutex.ReleaseMutex();
}
}
WPF
private static Mutex mutex;
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
mutex = new Mutex(true, Assembly.GetExecutingAssembly().GetName().Name, out bool createdNew);
if (!createdNew) Shutdown();
}