W .NET, jaki jest najlepszy sposób, aby zapobiec uruchomieniu wielu instancji aplikacji w tym samym czasie? A jeśli nie ma „najlepszej” techniki, jakie zastrzeżenia należy rozważyć przy każdym rozwiązaniu?
2 odpowiedzi
Za wszystkie pomysły z góry dziękuję!
Użyj Mutex:
[STAThread]
static void Main()
{
using(Mutex mutex = new Mutex(false, "Global\\" + appGuid))
{
if(!mutex.WaitOne(0, false))
{
MessageBox.Show("Instancja już działa");
return;
}
Application.Run(new Form1());
}
}
private static string appGuid = "c0a76b5a-12ab-45c5-b9d9-d693faa6e7b9";