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

C# .NET Pro pokročilé Instant Messenger 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();

 

  Aktivity (1)

Článek pro vás napsal David Jančík [sczdavos]
Avatar
Autor je vášnivý programátor v .NET C# a PHP. Nezná slovo "nelze", nebojí se zkoušet nepoznané a pronikat do nových technologií.

Jak se ti líbí článek?
Ještě nikdo nehodnotil, buď první!


 



 

 

Komentáře

Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zatím nikdo nevložil komentář - buď první!