Archive for April, 2008

Programm nur einmal Starten

Monday, April 28th, 2008

Hier ein kleiner Snippet, das ich immer wieder brauche.

Um sicher zu gehen, dass ein Programm nur einmal gestartet wird braucht soll man folgenden Code einfügen:

bool createdNew;
System.Threading.Mutex mutex
   = new System.Threading.Mutex(true, Application.ProductName, out createdNew);
 
if (createdNew) {
   // bitte Form1 ersetzen
   Application.Run(new Form1());
 
   // und auch wieder Freigeben besser ist besser
   mutex.ReleaseMutex();
} else {
   MessageBox.Show("Programm wurde bereits gestartet!", "Info", MessageBoxButtons.OK, MessageBoxIcon.Error);
}