Máme v Rebexu pár odvážlivců, kteří již delší dobu používají Windows Vista (někteří dokonce 64bit) a tito se stávají průkopníky v řešení nových problémů, které tento (stále ještě celkem nový OS) přináší. Pokusím se podělit o jedno průkopničení, kterého jsem se osobně zúčastnil:
Nedávno jsme se zasekli při instalaci jedné GUI komponenty (konkrétně Infragistic Net Advantage) - instalace padala s nějakou obecnou hláškou.
Když jsme zapnuli logování průběhu instalace (cmdline switch /log )
např.
msiexec /log "C:\temp\install.log" /i package.msi
hlásilo to chybový kód 1603, což je víceméně obecná chyba instalace.
Uvnitř logu jsme zjistili, že instalace padá na jednom z pre-instalačních či post-instalačních kroků na zobrazení nějakého dialogu, zřejmě z nedostupné třídy WiseNextDlg.
Po chvíli googlení jsme narazili na jeden německy psaný článek, jehož titulek přesně odpovídal naší situaci.
Německy sice neumím, ale z článku jsem pochopil, že workaroundem je spustit instalaci v "tichém" režimu a ona se dialog ani nepokusí otevřít.
Konkrétně
msiexec /qn+ /i package.msi
Nebudu vás napínat, pomohlo to.
P.S.: omlouvám se za nižší odbornou úroveň tohoto článku, možná některé termíny nepoužívám ve správném významu apod.
Instalace (a věci kolem Windows Installeru) pro mě dosud byly černou skříňkou, která funguje.
Když fungovat přestala, použil j"sem black-box debugging přístup a v tomto duchu je psán i tento blogpost.