我希望我的程序只能启动一次(不管它是否可以在其他用户帐户上启动)。如果第二次启动,C#程序只能运行一次+ BringToFront
如果它已经启动并且.exe再次打开,它应该将第一个实例的主窗口置于前面。
实现此目的的最简单方法是什么?
我希望我的程序只能启动一次(不管它是否可以在其他用户帐户上启动)。如果第二次启动,C#程序只能运行一次+ BringToFront
如果它已经启动并且.exe再次打开,它应该将第一个实例的主窗口置于前面。
实现此目的的最简单方法是什么?
This blog series might be helpful(见底部链接的其他选项)。我个人喜欢Part 4中描述的方法,因为在Windows Forms世界中,我使用WindowsFormsApplicationBase
类取得了很好的成功。
你想看看使用互斥对象。基本上,当你的程序运行时,检查一下Mutex是否存在“你的唯一名称”,如果有的话 - 关闭应用程序(在加载所有资源之前检查),否则创建一个具有唯一名称的Mutex,并按计划加载应用程序。
谢谢,这也为我做了诡计。 – Hedge 2011-03-31 19:40:00