Jednoduchý instalátor ve Visual Studiu 2008 - 2. díl
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jednoduchý instalátor ve Visual Studiu 2008 - 2. dílJednoduchý instalátor ve Visual Studiu 2008 - 2. díl

 

Jednoduchý instalátor ve Visual Studiu 2008 - 2. díl

Google       Google       23. 1. 2008       20 347×

V druhém, posledním, dílu si upravíme vzhled instalátoru a přidáme vlastní sériové číslo.

Ve druhé části článku o tvorbě instalátoru ve Visual Studiu se podíváme na grafické úpravy setupu, konkrétně na User Interface designer. Tato část by měla být čtivější, protože už nejspíš opadla nervozita z psaní mého prvního článku :-). Tak jdeme na to.

Jak už název napovídá, díky User Interface designeru můžeme nastavit vzhled samotné instalačky – to, co uvidí uživatel. Do UI se dostaneme stejně jako do File System designeru – v Solution Exploreru klikneme na projekt s instalátorem pravým tlačítkem myši, zvolíme View a pak User Interface.

Položky, které vidíte, jsou jednotlivá okna instalace, přehledně rozdělená do tří sekcí: Start (obsahuje uvítací okna, licence, atd.), Progress, který znázorňuje průběh instalace, a nakonec End (např. klasické okno s tlačítkem Finish po dokončení instalace).

To jsme si probrali typy oken, ale co znamenají „Install“ a „Administrative Install“? Je to dost jednoduché, „Administrative Install“ využijete, když chcete instalovat aplikaci po síti v rámci jedné pracovní skupiny. Instalátor se zkopíruje na síť a všichni, kdo mají dostatečná práva, si ji mohou nainstalovat, jakoby instalovali z CD. Jak už je asi jasné ze struktury rozdělení, oba dva typy instalací mohou mít vlastní vzhled. My využijeme normální „Install“ metodu.

Bohužel, není jiný způsob, jak zjistit aktuální vzhled našeho okna, než zkompilováním a spuštěním instalace (aspoň co je mi známo). Nemůžeme spustit instalaci v „debug“ módu, jako to děláme s normální aplikací.

Upravit instalaci můžeme hned několika způsoby:

  • Upravovat vzhled jednotlivých oken. Každé okno instalace má jiné možnosti nastavení. Jednoduše klikněte v UI designeru na některou z položek pravým tlačítkem a zvolte Properties Window.
  • Můžeme zpřeházet pořadí oken pomocí přetažení (Drag & Drop).
  • Okno můžeme i smazat: kliknout na něj a stisknout Del.
  • A samozřejmě ho můžeme i přidat: klikneme pravým tlačítkem myši na některý ze „setup states“ (to jsou ty Start, Progress a End) a zvolíme Add Dialog.

Při použití poslední možnosti máme na výběr z několika předdefinovaných oken, teď je ten pravý čas probrat si, jak se s nimi zachází a co všechno umí.

Každé z oken je udělané za nějakým účelem a poskytuje poměrně málo možností nastavení. Většina umožňuje nastavit vlastnost BannerBitmap, což je obrázek (logo,…) nahoře v okně (výchozí nastavení je bílý pruh s počítačem).

Vlastnost Popis
Splash Úvodní obrazovka; jediné, co umožňuje, je zobrazit nějaký obrázek (logo společnosti, programu,…).
Welcome Druhá úvodní obrazovka, tuhle použijete určitě častěji: pomocí vlastností CopyrightWarning a WelcomeText můžete nastavit zobrazené copyrighty, resp. nějaký uvítací text.
License Agreement Klasické licenční podmínky s možnostmi „I Agree“ a „I Do Not Agree“, načítají se z RTF souboru.
Customer Information Slouží pro zjištění jména uživatele. Další nepovinné vlastnosti jsou ShowOrganization pro TextBox na zadání názvu společnosti a ShowSerialNumber pro možnost zadání sériového klíče (popsáno níže).
Progress Okno, které ukazuje momentální stav instalace na ProgressBaru.
Register User Toto okno obsahuje tlačítko „Register Now“, které může odkazovat na webovou stránku, nebo na jiný program (pomocí vlastností Executable a nastavení argumentů pomocí Arguments).
Read Me Obsahuje text, který přečte ze souboru ve formátu RTF, který nastavíte pomocí vlastnosti ReadmeFile.

Nejspíš jste si všimli, že některá okna kromě vlastnosti BannerBitmap obsahují i booleanovskou vlastnost Sunken. Ta určuje, jestli bude nebo nebude obsah okna „zapuštěný“ do pozadí. Špatně se to popisuje, takže tady ukázka na obrázcích:

Asi si říkáte „Co takhle nějaké větší možnosti nastavení?“. Nebudou :-).

Můžeme přidávat přednastavená okna, ale o nějaké větší možnosti (třeba vytvoření celého svého okna, přidat nějakou svoji funkci,…) nás bohužel Microsoft ošidil.

Jak už jsem naznačil výše, teď trochu podrobněji popíšu vlastnosti ShowSerialNumber a SerialNumberTemplate, zároveň to bude to poslední, co dnes uděláme.

Pro zabránění instalace bez platného sériového čísla použijeme vlastnost SerialNumberTemplate. Už z názvu je patrné, že se jedná o nějakou šablonu. Díky ní můžeme nastavit tvar sériového čísla, které bude muset uživatel zadat. Nemůžeme přímo zjišťovat pomocí nějaké svojí metody, jestli je zadané číslo validní, ale opět se budeme muset spolehnout na funkce vestavěné v MSI.

Hodnotu vlastnosti SerialNumberTemplate dáme mezi znaménka „je menší než“ a „je větší než“ – „<“ a „>“. Díky tomu se jednotlivé znaky neobjeví přímo v TextBoxu.

V šabloně můžeme použít tyto znaky:

  • # – vyžaduje číslo, neprovádí žádné další kontroly
  • % – vyžaduje číslici a provádí kontrolu
  • ? – to samé co #, ale požaduje číslo nebo písmeno
  • ^ – požaduje písmeno
  • < a > – jakýkoliv znak nalevo, resp. napravo od těchto znaků nebude v poli vidět (proto uvozují hodnotu vlastnosti SerialNumberTemplate)

Pokud napíšete číslici nebo písmeno „jen tak“, bude předem vepsané do pole sériového čísla, ale tento postup nám udělá další TextBox. Další možnost, jak udělat nový TextBox, je napsání jakéhokoliv jiného znaku (kromě klíčových), typicky se používá pomlčka. Aby se nám vůbec nějaký TextBox zobrazil, nastavíme přepneme vlastnost ShowSerialNumber na true.

Teď je načase vysvětlit, co se myslí tím „provádí/neprovádí kontrolu“. MSI obsahuje jednoduchý algoritmus pro kontrolu, jestli jsou zadaná čísla správná (při použití %). Vezme všechny číslice v pozadí označené %, seřadí je za sebou a vydělí 7. Pokud je zbytek po dělení 0, kontrola proběhla úspěšně a instalace může pokračovat.

Na ukázku jsem připravil číslo s kódem <P%R??oG-%%-#?%>, dostaneme pole skládající se ze sedmi TextBoxů.

Pokud vyplníme například P7RBloG-07-9b7, instalace se nám vesele spustí, protože číslo 7077 je skutečně dělitelné 7 beze zbytku.


A to je vše. Teď byste měli být schopní vytvořit si opravdu jednoduchý, přesto funkční instalátor, který má i něco „navíc“ oproti prvnímu dílu. Kurz sice končí, ale nevylučuji, že se v budoucnu nepodíváme na nějaká pokročilejší témata. Problémy a poznatky pište do komentářů, jen to uvítám.

Zdroj: http://www.devarticles.com/c/a/C-Sharp/Creating-a-.NET-Windows-Installer--Part-1/11/

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Jakub studuje informatiku na FIT ČVUT, jeho oblíbenou platformou je .NET.
Web     Twitter     Facebook     LinkedIn    

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý