mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-13 05:48:35 +00:00
Duplicate instance check
This commit is contained in:
parent
7526e4b239
commit
bf9a30bea2
@ -1,8 +1,13 @@
|
|||||||
using System.Windows;
|
using System.Diagnostics;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Windows;
|
||||||
|
using System.Windows.Forms;
|
||||||
using Artemis.ViewModels;
|
using Artemis.ViewModels;
|
||||||
using Autofac;
|
using Autofac;
|
||||||
using Caliburn.Micro;
|
using Caliburn.Micro;
|
||||||
using Caliburn.Micro.Autofac;
|
using Caliburn.Micro.Autofac;
|
||||||
|
using Application = System.Windows.Application;
|
||||||
|
using MessageBox = System.Windows.Forms.MessageBox;
|
||||||
|
|
||||||
namespace Artemis
|
namespace Artemis
|
||||||
{
|
{
|
||||||
@ -10,6 +15,7 @@ namespace Artemis
|
|||||||
{
|
{
|
||||||
public ArtemisBootstrapper()
|
public ArtemisBootstrapper()
|
||||||
{
|
{
|
||||||
|
CheckDuplicateInstances();
|
||||||
Initialize();
|
Initialize();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -27,5 +33,16 @@ namespace Artemis
|
|||||||
{
|
{
|
||||||
DisplayRootViewFor<SystemTrayViewModel>();
|
DisplayRootViewFor<SystemTrayViewModel>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void CheckDuplicateInstances()
|
||||||
|
{
|
||||||
|
var processes = Process.GetProcesses();
|
||||||
|
if (processes.Count(p => p.ProcessName == "Artemis") < 2)
|
||||||
|
return;
|
||||||
|
|
||||||
|
MessageBox.Show("An instance of Artemis is already running (check your system tray).",
|
||||||
|
"Artemis (╯°□°)╯︵ ┻━┻", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||||
|
Application.Current.Shutdown();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user