Home
Manage Your Code
Snippet: Only One Instance per Application (C#)
Title: Only One Instance per Application Language: C#
Description: Start-Routine for a Application where should only be start one Instance. The Programm use the Multiplexer in the System.Threading.Assembly Views: 77
Author: Frank Blau Date Added: 7/16/2008
Copy Code  
1static void Main()
2{
3  bool bCreatedNew = false;
4
5  // Multiplexer erzeugen der überprüft ob die Applikation gestartet wurde. Der out Parameter
6  // wird nur beim ERSTEN erfolgreichen Start gesetzt.
7
8  Mutex mtxApp = new System.Threading.Mutex(true, Application.ProductName, out bCreatedNew);
9  // Wenn die Erzeugung erfolgreich war.
10  if (bCreatedNew)
11  {                     
12    Application.Run(new FMAIN());
13    // Mutex wieder freigeben
14    mtxApp.ReleaseMutex();
15  }
16  else
17  {
18    string msg = String.Format("Das Programm \"{0}\" wurde bereits gestartet!", Application.ProductName);
19    MessageBox.Show(msg, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
20  }
21}    
Usage
Namespace in use for Multiplexer:

using System.Threading;