Obsah


Základy ClickOnce
Odinstalace
Další informace

Základy ClickOnce

Technologie ClickOnce, kterou využívá IS Evolio je jednou ze dvou instalačních technologií, které Microsoft podporuje. Pokud má aplikace získat např. označení Widows Vista Certified, musí být instalována pomocí MSI nebo ClickOnce.

Myšlenka ClickOnce se od běžné instalace liší svou filozofií - je to technologie předpokládající instalaci přes Internet, automatickou aktualizaci a různé varianty provozu.

Z jejích vlastností je určitě zajímavé:
  • Možnost spouštět aplikaci jen v on-line režimu (de facto silná kontrola distribuce aplikací)
  • Možnost rozdělit soubory v instalaci na skupiny a ty stahovat na vyžádání
  • Programové rozhraní, díky kterému lze provést např. aktualizaci s vlastním UI přímo ve své aplikaci
  • Při aktualizaci se stahují jen změněné soubory
  • Propracovaná logika celého stahování, generování error logu, vyvíjeno i pro korporátní sítě s bezpečnostími politikami
  • Instalace probíhá tak, že uživatel dostane odkaz na html stránku a klikne na tlačítko Install (=once click)
  • Možnost vrátit se k přecházející verzi

Nevýhodou je:
  • Na web se vystavují nekomprimované soubory (u Evolia zabírá msi 10 MB, ClickOnce necelých 40 MB)
  • Instalace podepsané certifikátem se po vypršení platnosti musí odebrat a nainstalovat s novým certifikátem znovu
  • Cesta pro aktualizaci musí být unc (nelze např. udělat instalaci předpokládající sdílený disk P: - vždy musí být uvedena síťová cesta)
  • NELZE vytvořit zástupce na plochu (jako součást instalace)

Na základě dvouletého provozu můžeme konstatovat, že ClickOnce a dotnetové aplikace velmi omezují množství problémů a starostí s distribucí.

Základním technickým rozdílem je, že se instalace provádí do profilu uživatele do složky Local Settings - to souvisí s celou filozofií ClickOnce - k instalaci nepotřebujete práva administrátora. Proč? Např. proto, aby se mohly spouštět malé online aplikace - na webu kliknete na kalkulačku, ta se stáhne za pár vteřin a uživatel vesele kalkuluje - administrátor není nutný.

Odinstalace

Běžné možnosti jsou značně omezené. Ve Start-Programy se položka pro odinstalaci nezobrazí a nelze ji nikde zapnout. Uživatel proto musí jít klasickou cestou přes Přidat/Odebrat programy.

Pokud chceme spustit odinstalaci, lze v bat souboru spustit tento příkaz:

rundll32.exe dfshim.dll,ShArpMaintain Evolio7.application, Culture=cs-CZ, PublicKeyToken=49cbb422989c6143, processorArchitecture=msil

  • Tlustě zvýrazněné části se musí upravit pro konkrétní aplikaci - nejvýhodnější je otevřít appliacation manifest z instalaček a údaje přepsat z něho. POZOR! Rozdíl může být i Culture=neutral (místo cs-CZ).
  • Tento příkaz spustí dialog s volbou Restore/Remove a dál je na uživateli, aby to odklikal.

Kde jsou umístěny instalační informace?

V registru
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall
se vyskytuje seznam aplikací nainstalovaných ClickOnce, jsou tam evidovány nikoli pod svým názvem, ale pod názvem PublicKeyToken - to může být jeden z důvodů, proč se v registrech o dané aplikaci obtížně hledají.