Inno Setup | |
Fejlesztő | Jordan Russell és részben Martijn Laan |
Legfrissebb stabil kiadás | 6.2.2 (stabil verzió, 2023. február 15.)[1] |
Programozási nyelv | Object Pascal |
Operációs rendszer | Microsoft Windows |
Kategória | telepítőszoftver-készítő program |
Licenc | Inno Setup License |
Az Inno Setup weboldala |
Az Inno Setup egy Jordan Russell által készített, nyílt forráskódú, Delphivel készített telepítőszoftver-készítő program. A fejlesztés 1997-ben kezdődött, az általa készíthető telepítőprogramok kinézete többször átalakult és képességeik is fejlődtek. Az 5.1.0-s bétaverziótól már a 64 bites architektúrákat is támogatja[2] és Windows Vista-kompatibilis.[3]
A program háromszor kapta meg egymás után a Shareware Industry Awards-díjat, 2002 és 2004 között.[4][5][6]
Az Inno Setup, és az általa készített telepítőszoftverek az összes ma használatban lévő Windows-verzión képesek futni, a Windows 2000-től a Windows Vistán keresztül a Windows 10-ig.[3] A telepítők állhatnak egyetlen EXE fájlból, de lehetőség van darabolásra: a 4-es verziótól akár CD- vagy DVD-méretű darabokat is lehet készíteni.[7] Tömörítés terén több módszerből választhat a felhasználó, az egyszerű ZIP-es (deflate) tömörítésen kívül rendelkezésre állnak a hatékonyabb Bzip2 és LZMA algoritmusok.[3] A beépített Pascal programozási lehetőség segítségével, amely a RemObjects Pascal Script[8] használatával van megvalósítva, a telepítő képes a felhasználó által megírt parancsok végrehajtására, és dinamikus könyvtárak (DLL-ek) betöltésére.
A telepítőprogramok Windows 2000/XP-stílusú varázslós felülettel rendelkeznek. A megszokott oldalakon kívül a felhasználó készíthet Pascal nyelven újabbakat információk megjelenítéséhez vagy bekéréséhez, ebben előre megírt osztályok segítenek.[9] Van eltávolító, tartalmazhatnak több nyelvet, levédhetőek jelszóval, és futhatnak csendes módban is. Az egyszerű fájlkitömörítésen kívül képesek a megadott programok verzióinak összehasonlítására, használatban lévő fájlok lecserélésére, DLL-ek, OCX-ek és típuskönyvtárak regisztrálására, betűtípusok telepítésére. Tudnak parancsikonokat készíteni (az asztalra, a startmenübe és a gyorsindítóba) és bejegyzéseket írni a rendszereíró adatbázisba és az INI-fájlokba.[3][7]
Az Inno Setup támogatja a Unicode karakterkódolást. Windows Installer-technológiát használó telepítőket sem lehet vele készíteni.[10] Az 5.1.2-es verziótól hivatalos magyar fordítást is tartalmaz.[11]
A fejlesztés 1997-ben kezdődött,[3] korai szakaszában még 16 bites architektúrákra is lehetett telepítőket készíteni. A 2000 áprilisában megjelent 1.2.16-os verzió volt az utolsó, amely támogatta ezt.[12]
A 2.0.0-s bétaverzió újdonsága volt a Martijn Laan által készített My Inno Setup Extensions funkcióinak átvétele. A varázsló más kinézetet kapott, valamint ekkor jelent meg az összetevők és a felhasználói feladatok készítésének a lehetősége, emellett a fordítóprogramot szintaxiskiemelővel látták el.[13] A következő bétaváltozatban (2.0.1) került bevezetésre a más nyelvekre való fordítás.
A 3.0-s verzió megjelenése is számos új funkciót hozott, főként a fordítóprogramhoz: beépített hibakereső (debugger) került bele, valamint bővült a szkriptfájlvarázsló. Ettől a verziótól szűnt meg a Windows NT 3.51 támogatása.[14]
A 4.0.0-s verzió további dolgokat vett át a My Inno Setup Extensionsből: ekkor épült be a Pascal programozás lehetősége, a többnyelvű telepítők támogatása, és a 2 gigabájtos fájlméret túllépésének lehetősége a nem FAT-típusú fájlrendszereken.[15] A 4.1-es, és 4.2-es verziók során jelent meg az LZMA módszerrel való tömörítés, a telepítő ikonjának cserélhetősége, majd a saját üzenetek a többnyelvűség támogatásának további fejlesztéseként.[16]
Az 5-ös változat a varázslót vezérlő kód újraírásával kezdődött, ennek eredményeképpen egyszerűbb lett saját oldalak és egyedi telepítési menet létrehozása. Lecserélték a varázslóknál használt képeket és a fordítóprogram ikonját új, modernebb változatokra. Az 5.1.0-s verzió hozta el a 64 bites architektúrák támogatását, majd ezt követően jelent meg számos, Windows Vistával való kompatibilitást elősegítő javítás.[17]
Az Inno Setup fordítóprogramjában (angolul Inno Setup Compiler, Compil32) van lehetőség azon szkriptfájlok megírására, melyekből később telepítőprogramok készíthetőek. Egy szövegszerkesztőt tartalmaz, ezenkívül rendelkezik egy varázslóval, mely segítségével néhány lépés alatt elkészíthető egy egyszerű telepítő.[7]
A varázsló használata során megadhatóak a telepítő fontosabb paraméterei, úgymint a program neve, verziója, a kiadó cég vagy szervezet, a telepítés helye, a becsomagolandó fájlok, az elkészítendő parancsikonok, a licencet tartalmazó szövegfájl, a különböző felvilágosításokat tartalmazó szövegfájlok, a nyelvi fájlok, az ikon, a jelszó, a kimeneti könyvtár, és a telepítőprogram fájlneve. Ezekből az információkból a program egy kész szkriptfájlt hoz létre, melyből azonnal elkészíthető a működő telepítő.[7]
Az Inno Setup a varázsló kapacitásánál jóval több dolog testreszabását teszi lehetővé, azonban ezeket már a felhasználónak kell megadnia a szkriptfájl módosításával. Ezekről a program súgójában lehet tájékozódni.
Az Inno Setuphoz egy parancssoros fordítóprogram is tartozik (angolul Inno Setup Command-Line Compiler, iscc), mellyel grafikus felhasználói felület nélkül, automatikusan elkészíthetőek a szkriptfájlokból a telepítőprogramok. A művelet háttérben is végrehajtható, ilyenkor nem jelenik meg a parancssor-ablak, csak az esetleges hibaüzenetek. Hátránya, hogy nem tartalmaz tesztfuttatást, és így nem készül naplófájl a telepítő futásáról, megnehezítve a telepítés során felmerülő hibák felderítését.[18]
Mivel az Inno Setup forráskódja nyílt, számos kiegészítő program, eszköz készült funkcióinak bővítésére. A hivatalos honlapról elérhető egy Inno Setup QuickStart Pack nevű csomag, amely tartalmazza az ISTool és az Inno Setup Preprocessor kiegészítőket, valamint lehetőséget nyújt a titkosító modul letöltésére is, amelyet jogi okok miatt nem lehet csatolni az eredeti készlet mellé.
A QuickStart Pack első tagja az ISTool, amely szükségtelenné teszi a szkriptfájlok kézzel történő megírását: az összes testreszabható érték egyszerűen beállítható egy egyszerűen használható felületen. A programot Bjørnar Henden készítette, és a magyar nyelvet is támogatja.
A QuickStart Pack másik tagja az Inno Setup Preprocessor (ISPP), melynek segítségével a szkriptfájlokban elhelyezett különböző direktívák segítségével új funkciókhoz juttathatóak a telepítőprogramok. Ilyen például a bejelentkező képernyő, vagy a háttérzene, melyek az Inno Setup eredeti verziójával készített változatokban nem érhetőek el.