可能重复:
创建单实例应用程序的正确方法是什么?
如何将我的应用程序定义为在反复单击其 exe 文件后仅打开一次?
Stack Overflow for Single Instance Applications有几个相关问题:
这个似乎是最合适的:创建单实例应用程序的正确方法是什么?
我总是在应用程序的入口点这样做:
bool onlyInstance = false;
Mutex m = new Mutex(true, "MyUniqueMutextName", out onlyInstance);
if (!onlyInstance)
{
return;
}
GC.KeepAlive(m);