microsoft, windows, deployment, windows installer,

Windows Installer: Omezení instalačních balíčků

Michal ZOBEC Michal ZOBEC Sledovat Apr 29, 2020 · 1 minuta čtení
Windows Installer: Omezení instalačních balíčků
Sdílet

Tvorba instalačních balíčků pro korporace je možná v několika formátech. Relativně velké množství společností však trvá na tom, aby byl použit „nativní“ formát Windows installer i v případech, kdy se ve skutečnosti jedná o sadu produktů. který však zadavatel považuje za jeden produkt.

Setkávám se tedy s dotazy, nebo požadavky na konzultaci, jak řešit situaci, kdy je nutné vytvořit jeden balíček, který se technicky skládá z více MSI balíčků. To je technicky řešitelné, ale má to svoje omezení.

Jediné funkční řešení je použít BootStraper, nebo si napsat vlastní aplikaci, která bude postupně spouštět instalaci jednotlivých balíčků.

Technologie/služba Windows Installer z principu nedovoluje současný běh více instalací založených na engine Windows Installer.

V jednom okamžiku může běžet pouze jedna instalace založená na technologii Windows Installer (MSI).

Windows Installer pro tyto případy používá mutex, kterým oznamuje systému, že běží nějaká instalace a další instalátory se pak dozví, že nemohou běžet. Z tohoto důvodu občas vznikají konfliktní situace, kdy běží nějaká aktualizace Windows, využívající ještě Windows Installer a blokuje instalaci balíčku, kterou jste spustili ručně.

Jaký je tedy závěr? Pokud chcete mít instalační balíček pro hromadný deployment, složený z více komponent využívající MSI balíčky, není možné takový balíček vytvořit jako funkční. Tedy nelze vytvořit MSI balíček, volající další MSI balíčky (nested packages).

Tuto informaci najdete také v oficiální dokumentaci pro Windows Installer:

Concurrent Installations, also called Nested Installations, is a deprecated feature of the Windows Installer. … Do not use concurrent installations to install products that are intended to be released to the public.

Toto lze řešit jedině skrze Bootstraper, tedy aplikaci, která pak zajistí postupné spouštění instalace jednotlivých balíčků samostatně.

Odkazy

Michal ZOBEC
Napsal Michal ZOBEC Sledovat
IT konzultant, projekt manažer.

Působím v IT oboru 16 let se zaměřením na produkty společnosti Microsoft, zejména Windows Server, Exchange Server, SQL Server a Hyper-V Server. V současné době se věnuji kromě konzultací, také vývoji software a řízením projektů, včetně vývoje řešení pro cloud Microsoft Azure.

Mám zkušenosti ve společnostech všech velikostí, od živnostníků po velké korporace. Své služby jsem poskytoval také některým školám. Mám také několikaleté zkušenosti se spoluprací s mezinárodními společnostmi, kde se členové týmu nachází v různých zemích.