MVVM Light和应用程序的一个实例

时间:2013-01-13 07:59:58

标签: c# wpf singleton mvvm-light

我正在使用MVVM Light开发WPF应用程序。

我想知道如何检查并阻止用户运行多个应用程序实例?

感谢您的帮助。

罗曼

3 个答案:

答案 0 :(得分:2)

Arik Poznanski在他的博客上写了一篇关于这个主题的文章。

以下是第一个article

的链接

以下是update

的链接

答案 1 :(得分:1)

您可以在应用程序启动时检查正在运行的进程,如果已经存在,则退出:

var appProcessName = Process.GetCurrentProcess().ProcessName;
var matchingProcesses = Process.GetProcessesByName(appProcessName);
if (matchingProcesses.Any())
{
    // Exit
}

答案 2 :(得分:0)

我认为你要找的东西叫做单实例互斥。 Google有很多结果,但我最近从这个帖子中使用了一个Windows Forms应用程序。

https://stackoverflow.com/a/7810107/1718702