Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
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í.

Univerzální Updater

Tento prográmek vám usnadní kontrolu aktualizací pro vaše programy.

Jednoduše mu předáte parametry

UniversalUpdater.exe 1.25.3333 http://mojestranka.cz/aplikace_info.php?id=1f5r8d s

kde s určuje zda se při nenalezení aktualizace nebo výskytu chyby zobrazí hláška (silent mode - například při spouštění aplikace)

nebo přiložíte soubor uu.ini s obsahem "1.25.3333\nhttp:­//mojestranka­.cz/aplikace_in­fo.php?id=1f5r­8d"

kde script vrátí ifnormace o aplikace v podobě "současná verze\nweb aplikace\nodkaz na stažení" jako například zde: http://itnetwork.cz/…_version.php?…

Aplikace za vás zkontroluje verzi programu a pokud existuje novější verze nabídne vám její stažení. V případě, že stažení potvrdíte, stáhne se do dočasného adresáře a spustí.

/// <summary>
/// If update exists will return true else false. If error occurs throw an exception
/// </summary>
/// <returns></returns>
public bool CheckForUpdate()
{
    try
    {
        WebRequest request = WebRequest.Create(AppUpdateUrl);
        WebResponse response = request.GetResponse();
        StreamReader reader = new StreamReader(response.GetResponseStream());

        _CurrentVersion = new Version(reader.ReadLine());
        _AppWebPage = reader.ReadLine();
        _DownloadLink = reader.ReadLine();

        webClient.OpenRead(DownloadLink);
        fileName = new System.Net.Mime.ContentDisposition(webClient.ResponseHeaders["content-disposition"]).FileName;

        return CurrentVersion > InstalledVersion;
    }
    catch
    {
        throw new Exception("Cannot contact update server.");
    }
}

/// <summary>
/// Stáhnout soubor - do %temp%
/// </summary>
public void DownloadFile()
{
    if (String.IsNullOrEmpty(DownloadLink))
        throw new Exception("No download link");

    webClient.DownloadFileAsync(new Uri(DownloadLink), tempPath + fileName);
}

public void CancelDownload()
{
    webClient.CancelAsync();
}

V programu jej pak můžete volat takto:

public static void CheckForUpdates(bool Silent = true)
{
    if (File.Exists("UniversalUpdater.exe"))
    {
        Version InstalledVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
        System.Diagnostics.Process uu = new System.Diagnostics.Process();
        uu.StartInfo.FileName = "UniversalUpdater.exe";
        uu.StartInfo.Arguments = " " + InstalledVersion + " http://itnetwork.cz/scripts/programs_version.php?uniqid=505b0c67d08e0" + (Silent ? " s" : "");
        uu.Start();
    }
}

Galerie

Program byl vytvořen v roce 2013.

 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 256x (46.56 kB)
Aplikace je včetně zdrojových kódů v jazyce C#

 

Předchozí článek
Přítomnost .NET 3.5 SP1 a Mutex - ISIM
Všechny články v sekci
Programujeme vlastní Instant Messenger ::ISIM::
Přeskočit článek
(nedoporučujeme)
Modifikovaný ListView jako kontakt list a Mutex - ISIM
Program pro vás napsal David Jančík
Avatar
Uživatelské hodnocení:
3 hlasů
Autor je vášnivý programátor. Nezná slovo "nelze", nebojí se zkoušet nepoznané a pronikat do nových technologií.
Aktivity