Sprache: C#
Aus den tiefen meiner Sourcen wieder mal ein kleiner Snippet
Es könnte ja mal passieren, dass Ihr nicht wollt das euer Programm mehrmals gestartet wird.
Hier ist die Lösung per .Net Boardmitteln
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);
}
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);
}
Alte URL:
/snippet/programm-nicht-mehrmals-starten-net/358
Du musst die Variable nicht extra erstellen,
[code]new System.Threading.Mutex(true, Application.ProductName, out createdNew);[/code] reicht aus und spart Speicher^^