【发布时间】:2009-11-05 09:45:17
【问题描述】:
我正在使用 C# 构建应用程序。
我通过检查同一个进程是否已经在运行,设法将它变成了一个单实例应用程序。
Process[] pname = Process.GetProcessesByName("SwapCardDesktop");
if (pname.Length < 2)
{
// Launch Application
}
我打算在此处添加另一个功能,以便在尝试再次启动时启动正在运行的实例。
如果应用程序已经在运行,我尝试调用 ShowWindowAsync(),
ShowWindowAsync(hWnd, 9);
但是,当最小化到托盘时,这无法调出应用程序。
对此有什么建议吗?
【问题讨论】:
-
@Immanuel - EKS 的回答应该被接受。他的第一个链接是执行此操作的好方法,比检查进程名称要好得多。
标签: c# .net single-instance