Risipa de key_press | Programare

Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Risipa de key_press | Programare - Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

O singura instanta a aplicatiei

Presupunem ca ne dorim ca aplicatia la care lucram sa ruleze intr-o singura instanta. Pentru a nu permite utilizatorilor sa creeze mai mult de o instanta pentru aplicatie, vom folosi clasa Mutex din namespace-ul System.Threading. Clasa Mutex permite accesul exclusiv la o resursa partajata intre mai multe procese, pentru un singur thread. Acest lucru diferentiaza obiectele Mutex fata de obiectele Monitor.

using System;
using System.Threading;
using System.Windows.Forms;

namespace SingleInstance
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            bool createdNew = false;

            //numele unic al aplicatiei
            Mutex mutex = new Mutex(true, "SingleInstamce", out  createdNew);

            if (createdNew)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
            else
            {
                MessageBox.Show("Aplicatia este deja pornita");
            }
        }
    }
}
Category: Uncategorized

Your email address will not be published. Required fields are marked *

*