如果第二次启动,C#程序只能运行一次+ BringToFront

时间:2011-03-31 18:48:42

标签: c# .net wpf

我希望我的程序只能启动一次(如果可以在其他用户帐户上启动它并不重要。)

如果它已经启动并再次打开.exe,它应该将第一个实例的主窗口置于前面。

实现这一目标的最简单方法是什么?

2 个答案:

答案 0 :(得分:2)

This blog series might be helpful(参见底部链接的其他选项后续部分)。我个人喜欢Part 4中描述的方法,因为在Windows窗体世界中我使用WindowsFormsApplicationBase类取得了很好的成功。

答案 1 :(得分:0)

您想要研究使用Mutex对象。基本上,当您的程序运行时检查Mutex是否存在“您的唯一名称”,如果存在 - 关闭应用程序(在加载所有资源之前执行此检查),否则创建具有唯一名称的Mutex并按计划加载您的应用程序