Instalujte, ale potichu

Dnes se budeme zabývat činností, kterou dobře zná každý z nás. Nahlédneme do možností instalace aplikací ve Windows. Nemusíte mít strach, že se budeme učit klikat na notoricky známý sled tlačítek Další, Další, Další, Dokončit. Podíváme se totiž společně na celou věc trošku z jiné stránky a vezmeme instalaci aplikací do vlastních rukou.

Instalace v grafickém rozhraní

Můžete se setkat s několika způsoby instalace aplikací. První a nejznámější je výše naznačený postup, kdy spustíte grafickou verzi instalátoru a postupně se proklikáváte jeho dialogy. Je-li třeba, upřesníte některé základní parametry, jako například složku, kam si přejete program nainstalovat, nebo zda se má na ploše vytvořit zástupce. V posledních kroku se s vámi instalátor rozloučí a vy můžete program poprvé spustit. Každou aplikaci je třeba alespoň lehce nastavit, takže i to bude jistě jeden z kroků. Některé aplikace navíc vyžadují akceptování smlouvy EULA (End User License Agreement) nebo vám nabídnou účast v programu pro zlepšení kvality daného software. Doposud byla vaše pozornost odváděna na instalaci a nastavení aplikace samotné, a až nyní jí můžete skutečně začít používat. Nicméně pokud instalujete pouze malé množství programů, může tento postup být poměrně časově efektivní.

Portable aplikace

Nejste-li příznivci instalování, pak možná provozujete své aplikace v takzvané portable verzi. Funguje to tak, že si stáhnete upravenou verzi aplikace tak, aby nevyžadovala instalaci, zkopírujete ji na USB flash disk a veškeré softwarové vybavení si nosíte s sebou. I to je samozřejmě zajímavé řešení. O tom snad ale někdy příště.

Tichá instalace

Pojďme rovnou k náplni tohoto článku. Řeč bude o tiché instalací aplikací. Tichá v tom slova smyslu, že automaticky běží na pozadí a neobtěžuje uživatele žádnými dialogy. My ji pouze skriptem z příkazového řádku zadáme požadované parametry. Vše ještě rozšíříme o automatické nastavení aplikací a lehkou údržbu systému. Výhodou tiché instalace je její rychlost a podpora naprosté většiny dnešních aplikací. V případě nasazení většího množství aplikací na větší počet počítačů prakticky nemá konkurenci. Patrně jedinou nevýhodou je vyšší časová náročnost přípravy instalačního skriptu.

Nejčastějšími příponami instalačních souborů bývají .exe a .msi. Software je distribuován uvnitř těchto balíčků a celou instalaci programu řídí takzvaný instalátor. V případě .msi je jím Windows Installer. U spustitelných .exe souborů se můžete setkat s několika různými instalátory. Po bližším ohledání zjistíte, že jde zpravidla o InstallShield, Inno Setup, případně nějaký další.

Typ instalátoru nám jasně říká, jaké parametry lze pro tichou instalaci aplikace použít. Stručný seznam instalátorů a jim odpovídajících parametrů najdete v této tabulce. Velmi dobrým zdrojem je také server http://www.appdeploy.com/.

Instalátor Parametry
InstallShield setup.exe /s
Windows Installer msiexec /i setup.msi /qn REBOOT=ReallySuppress
Inno Setup setup.exe /VERYSILENT
Neznámý setup.exe /?

V případě, že nevíte, jaký instalátor výrobce aplikace použil, můžete si veškeré parametry nechat vypsat zadáním příkazu setup.exe /? do příkazového řádku Windows. Setup.exe nahraďte správným názvem souboru a případně cestou k němu.

Píšeme skript

Nejnázornější bude malá ukázka, vzhůru do ní. Náš skript [šipka k skript.png] bude postupně volat tiché instalace programů, nastaví Adobe Reader, tak aby se choval podle našich přání a na závěr provede lehkou očistu systému od zbytečností. V průběhu svého běhu bude na příkazový řádek vypisovat informace o stavu instalace, abychom věděli, co se povedlo a kde je naopak něco špatně.

skript

Na začátku si definujme proměnnou Apps, která obsahuje cestu ke složce s instalačními balíčky. Dejme tomu, že jsme je umístili do složky C:\Install.

SET Apps=C:\Install

Pojďme nainstalovat první aplikaci. Bude jí například Mozilla Firefox. Místo %Apps% se vloží cesta, kterou jsme do proměnné uložili v předchozím kroku a spustí se instalátor s parametrem pro tichou instalaci.

“%Apps%\Firefox Setup 3.0.10.exe” /S

Firefox po nainstalování vyžaduje vytvoření nového profilu. To zařídíme tímto příkazem. Všimněte si proměnné %ProgramFiles%, která je systémová (je automaticky nastavena systémem) a ukrývá v sobě cestu ke složce „Program Files“.

“%ProgramFiles%\Mozilla Firefox\firefox.exe” -CreateProfile “default

Požadujete-li nastavit Firefox jako výchozí prohlížeč zadejte i tento příkaz.

“%ProgramFiles%\Mozilla Firefox\firefox.exe” -setDefaultBrowser -silent

Tato část kódu ve skriptu kontroluje po dokončení instalace každé aplikace, zda instalace proběhla v pořádku. Pokud je něco špatně, vypíše „ERROR“.

IF ERRORLEVEL 1 ECHO ERROR
IF NOT ERRORLEVEL 1 ECHO OK

Pro přehlednost výstupu oddělíme důležité části prázdným řádkem.

ECHO.

Jako další nainstalujeme Adobe Reader. Výsledek instalace můžeme ovlivnit mnoha parametry. Instalátoru zde říkáme, že si po dokončení nepřejeme provádět restart počítače a že instalujeme Reader všem uživatelům počítače. Také chceme automaticky akceptovat smlouvu EULA a zakázat automatické spuštění Readeru po dokončení instalace.

“%Apps%\Acrobat\AdbeRdr910_en_US_Std.exe” /sAll /rs /l /msi”/qn /norestart ALLUSERS=1 EULA_ACCEPT=YES SUPPRESS_APP_LAUNCH=YES”

Při prvním spuštění by nás ovšem Reader přivítal dotazem, zda se chceme zúčastnit programu pro zlepšení software. Tento dialog můžeme zrušit přidáním tohoto příkazu do skriptu.

REG ADD “HKCU\Software\Adobe\CommonFiles\Usage\Reader 9 ” /t REG_DWORD /v OptIn /d 0 /f

Ukažme si, že to jde i jednoduše. Typickým příkladem aplikace využívající Windows Installer je komprimační nástroj 7zip. Tichou instalaci, která mimochodem trvá pouze několik vteřin, zahájíme takto.

msiexec /i “%Apps%\7z465.msi” /qn

Pro správu obrázků si nainstalujme XnView.

“%Apps%\xnview\XnView-win.exe” /verysilent

Plugin Microsoft Silverlight nainstalujeme takto.

“%Apps%\Silverlight.2.0.exe” /q

Zjednodušeně si ukažme, jak přímo skriptem vyčistit ikony na ploše. Acrobat jsme instalovali všem uživatelům, proto je zástupce umístěn jinde. XnView se nainstalovalo pouze aktuálnímu uživateli, a tak ikonu najdete v jeho uživatelském plofilu. Cesty se mohou mírně lišit na Windows XP a Windows Vista.

DEL “%SystemDrive%\Users\Public\Desktop\Adobe Reader 9.lnk”
DEL “%UserProfile%\Desktop\XnView.lnk”

Kompletní skript včetně několika vzorových aplikací si můžete stáhnout tady. Samozřejmě také můžete spouštět jednotlivé příkazy ručně přímo v příkazovém řádku. Pro účely testování doporučuji využít Microsoft Virtual PC a vytvořit si virtuální stroj.

Tento článek byl napsán pro časopis Computer.