Tworzenie instalek

Tworzenie programów instalacyjnych nie jest tematem trywialnym. Obojetne czy zaprzegniemy do tego rewelacyjny pakiet WiX, wszechmocna, ale surowa Orce czy jakiekolwiek inne platne lub bezplatne aplikacje takie jak InnoSetup, InstallShield, Wise, NSIS czy chocby WinRAR.

Jezeli instalacja ma polegac na skopiowaniu paru plików, sprawa jest dosc prosta. Gorzej, gdy aplikacja wspólpracuje z IIS i musi wykryc i poprawic konfiguracje serwera, gdy komunikuje sie z baza SQL (dajac na przyklad opcje automatycznej instalacji wersji Express) itp. W takich przypadkach tworzenie pakietów instalacyjnych staje sie nieraz prawdziwa sztuka.

Tworzenie rozbudowanych programów instalacyjnych to temat raczej na blogi MSDN niz Technet. Ale w zyciu kazdego tak zwanego ITPro, przychodzi taki moment, ze chocby prosta instalka bedzie jednak bardzo przydatna. Pominiemy tu tworzenie wlasnych plików MSI. Nie dlatego, ze jest to nieciekawe, ale dlatego, ze temat jest tak duzy, ze poswiece mu kiedys wiecej miejsca. Skupmy sie na stworzeniu pliku EXE, który:

  • Umie wyswietlic kawalek tekstu z pytaniem o zgode
  • Umie skopiowac zadane pliki we wskazane miejsce
  • Umie uruchomic wskazane polecenie, w tym polecenie opierajace sie na skopiowanych wlasnie plikach
  • Umie w razie potrzeby zrestartowac komputer
  • Umie pracowac w trybie automatycznym, nie wymagajacym interakcji z uzytkownikiem

Nie jest to bardzo rozbudowana funkcjonalnosc, ale typowemu administratorowi rzadko potrzebne jest cos wiecej.

I tu pojawia sie pytanie, czego uzyc. Wybór wydaje sie spory, ale kazdy profesjonalny pakiet ma tak rozbudowana funkcjonalnosc, ze przebicie sie przez jego instalacje, konfiguracje, pliki XML, dokumentacje i zrozumienie interfejsu to zadanie na wiele godzin. A wystarczy po prostu zebrac pare plików i w jednej paczce dostarczyc je na miejsce.

Z pomoca przychodzi narzedzie, które wbudowane jest w kazdy system Windows: IExpress.exe Zrozumienie go to kwestia minuty a zrobienie wlasnej instalki zajmie niewiele dluzej. Proste, dziala, za darmo. Nic tylko uzywac. Jedno, czego warto byc swiadomym, to ze IExpress nie ma nic wspólnego z UAC. Wszystkie polecenia sa wykonywane w kontekscie uzytkownika, który uruchomi program i nie pojawia sie zadna prosba o uzycie wyzszych uprawnien. Ten typ tak ma. Czasem to wada, czesto zaleta, ale na pewno trzeba byc tego swiadomym.

Autor: Grzegorz Tworek [MVP]

PS Niezaleznie jakiego narzedzia uzywacie do tworzenia instalek – róbcie je tak, zeby oprogramowanie dalo sie je zainstalowac w sposób bezdotykowy. Inni administratorzy oszczedza Wam paru mocnych slów. ;)