IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Lekce 2 - Přítomnost .NET 3.5 SP1 a Mutex - ISIM

Program.cs

Kontrola jeho dostupnosti by měla vypadat tedy nějak takto:

// Kontrola přítomnosti požadované verze .NET FW
string netSPver = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5").GetValue("SP").ToString();

// Pokud tam hodnota není nebo je 0 zobrazí se zpráva s odkazem na stažení FW a po odpovědi na ni se program vypne
if ((string.IsNullOrEmpty(netSPver)) || (netSPver == "0"))
{
    if (MessageBox.Show("Aplikace vyžaduje .NET Framework min. v.3.5 SP1, který ve vašem počítači nebyl nalezen.\nPřejete si jej nyní stánout? (bez něj aplikaci nelze spustit)", "Chyba", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes)
        System.Diagnostics.Process.Start("http://www.microsoft.com/download/en/details.aspx?id=22");

    return;
}

Mutex aplikace, pro kontrolu jedné instance aplikace. Něco ještě nemáme hotové, ale to časem dopíšeme. Nechci přebíhat z jednotlivých tříd, abychom se v tom pak neztratily. Více zde: http://www.itnetwork.cz/…gle-instance

// Mutex aplikace -> ke kontrole, zda aplikace již neběží. Pokud ano tak vyšle signál, který zobrazí její hlavní okno
bool createdNew = true;
System.Threading.Mutex appMutex = new System.Threading.Mutex(true, "ISIM", out createdNew);

if (createdNew)
{
    // Absence této metody, může způsobit, že se mutex nezapíše a aplikace bude moci být spuštěna vícekrát
    appMutex.ReleaseMutex();
    // Aby byla instance hlavního okna aplikace přístupná ze všady
    Global.OpenForms.mainForm = new MainForm();
    Application.Run(Global.OpenForms.mainForm);
}
else
    Global.SingleInstance.ShowForm();

 

Předchozí článek
Úvod, externí třídy ve speciální složce - ISIM
Všechny články v sekci
Programujeme vlastní Instant Messenger ::ISIM::
Článek pro vás napsal David Jančík
Avatar
Uživatelské hodnocení:
Ještě nikdo nehodnotil, buď první!
Autor je vášnivý programátor. Nezná slovo "nelze", nebojí se zkoušet nepoznané a pronikat do nových technologií.
Aktivity