Ultime notizie
Home » Tips and Tricks » Come garantire l’esecuzione di una singola istanza di un’ applicazione su una macchina

Come garantire l’esecuzione di una singola istanza di un’ applicazione su una macchina

Talvolta è necessario far in modo che gli utenti eseguano una sola istanza di un’applicazione.
Ciò è possibile utilizzando l’oggetto Mutex del .Net Framework.
Nel esempio che segue è riportato il codice completo,scritto con il linguaggio di programmazione Visual C#(sharp), da inserire nel Main dell’applicazione :

[sourcecode language=”csharp”] using System;
using System.Threading;
using System.Windows.Forms;

namespace MioNameSpace
{
public static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread] public static void Main()
{
bool isFirstInstance;
Mutex oMutex = new Mutex(true,"Global\\" + Application.ProductName,out isFirstInstance);
if (isFirstInstance)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MioForm());
}
else
{
//inserire qui il messaggio da mostrare all’utente
}
}
}
}
[/sourcecode]



About Luigi Melisi

Analista Programmatore Senior, Team Leader in svariati progetti, con esperienza decennale in analisi, progettazione e sviluppo di software gestionale desktop e web, di E-Commerce e sistemi di Content Management System.In questi anni ho utilizzato in prevalenza tecnologie Microsoft (Visual C#, ASP.NET, SQL Server, Visual Studio, Windows Mobile, ecc.) e programmazione orientata agli oggetti, ma ho maturato esperienza anche in altre tecnologie come Java e PHP.Attualmente mi occupo di consulenza informatica, di sviluppo software gestionale personalizzato, realizzazione di Siti Web, di sistemi di Content Management System. ed E-Commerce su misura del cliente.

Check Also

Come ricavare l’ID univoco di un Windows Phone

Se durante lo sviluppo di un’applicazione ti si presenta la necessità di capirecome ricavare l’ID …

Lascia un commento

%d blogger hanno fatto clic su Mi Piace per questo: