2009-02-20 15 views
11

Mam zamiar rozpocząć nowy projekt InstallShield. Istnieją trzy możliwości wyboru dla typu projektu:Wybór typu projektu InstallShield

  1. Podstawowe MSI
  2. InstallScript
  3. InstallScript-MSI

Jakie są wady i zalety każdego z nich? Który powinienem wybrać?

+0

Proszę przeczytać moje komentarze poniżej. ** Unikaj typu projektu MSI InstallScript za wszelką cenę **. –

Odpowiedz

18

Podstawowe MSI:

Jest to standardowy typ instalacji. Korzysta z Instalatora Windows prawie dla całej instalacji (wymagania wstępne, wybór języka i inne rzeczy są obsługiwane przez setup.exe). MSI to baza danych z wieloma tabelami opisującymi sposób działania instalacji. Liczba tabel może być początkowo trochę przytłaczająca, ale InstallShield wykonuje dobrą robotę abstrakcji; w większości przypadków nie trzeba bezpośrednio edytować tabel bazy danych.

Jest to najczęściej stosowany rodzaj instalacji, więc dostępnych jest wiele informacji. InstallShield forum jest doskonałym źródłem informacji. Ponadto wiele instalacji korzysta z MSI, więc jeśli je zrozumiesz, łatwiej będzie zrozumieć, co robią inne instalacje (np. Jeśli musisz zainstalować MSI innego producenta w ramach instalacji). Ciche instalacje można łatwo wykonać za pomocą argumentu wiersza poleceń.

Niestety, ponieważ MSI steruje instalacją za pomocą tabel bazy danych, istnieje pewna krzywa uczenia się. Jeśli masz do bezpośredniej edycji tabel MSI, może to być mylące na początku, ponieważ istnieje wiele tabel, a niektóre z ich celów i interakcji są subtelne. Również tworzenie i sekwencjonowanie okien dialogowych jest trudniejsze w MSI, ponieważ wszystkie interakcje muszą być kontrolowane przez tabele. Niestandardowe okna dialogowe MSI można tworzyć, ale tylko w C++.

Polecam ten typ projektu dla większości zastosowań.

InstallScript:

projekty te wykorzystują skrypt instalacyjny, aby zainstalować oprogramowanie zamiast Instalatora Windows. Ponieważ skrypt instalacyjny jest programem liniowym, łatwiej zrozumieć, jak działa. Zaletą tego typu projektu jest to, że tworzenie i sekwencjonowanie okien dialogowych jest łatwiejsze. Również okna dialogowe języka InstallScript mogą być skórki i wyglądać nieco lepiej niż okna dialogowe MSI. Uruchomienie cichej instalacji wymaga oddzielnego "pliku odpowiedzi" do kontrolowania interfejsu użytkownika. Nie polecałbym używania tego typu projektu, chyba że masz konkretny powód (np. Jeśli musisz bardzo precyzyjnie kontrolować zachowanie instalacji w sposób nie obsługiwany przez MSI).

InstallScript MSI:

Jest to w zasadzie projekt, który wykorzystuje podstawowe MSI InstallScript kontrolować UI oraz MSI kontrolować rzeczywistą instalację. Ma tę zaletę, że używa MSI do sterowania instalacją, ale praca z oknami dialogowymi jest łatwiejsza. Nadal wymaga pliku odpowiedzi do kontrolowania interfejsu użytkownika podczas cichej instalacji. Jeśli nie dbasz o ciche instalacje lub skomplikowaną sekwencję dialogową interfejsu użytkownika, ten typ projektu może być przydatny.

+5

Weź to z okopów: nie korzystaj z MSI InstallScript MSI.Jest to bardzo błędne, powoduje wszelkiego rodzaju problemy związane z wdrażaniem korporacyjnym, a ogólnie rzecz biorąc, pokonuje cel i korzyści MSI jako technologii wdrażania. Mógłbym o tym mówić dalej, ale nie będę marnował twojego czasu. Wierz mi na słowo i uratuj sobie wiele kłopotów. Dostępne są podstawowe ustawienia MSI, jeśli chcesz zastosować umiejętności wdrażania MSI lub InstallScript, jeśli potrzebujesz skryptu wdrażania w stylu tradycyjnym. MSI ma krzywą uczenia się, ale znacznie poprawia wdrożenie korporacyjne. –

+0

@ kevin-kibler Zdaję sobie sprawę, że minęło trochę czasu, ale czy można to uaktualnić, aby objąć projekt Advance UI? – x5657

+0

Przepraszam, nie znam tego. W rzeczywistości nie korzystałem z InstallShield od kilku lat. Używam wix do obsługi moich (bardzo ograniczonych) potrzeb instalacji w ostatnim czasie. –

Powiązane problemy