Inno Setup
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]
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 |
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]
Általános tulajdonságok
szerkesztésAz 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 története
szerkesztésA 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]
A fordítóprogram
szerkesztésAz 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.
Parancssoros fordítás
szerkesztésAz 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]
Kiegészítők
szerkesztésMivel 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é.
ISTool
szerkesztésA 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.
Inno Setup Preprocessor
szerkesztésA 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.
További kiegészítők
szerkesztés- Inno Setup Script #Includes (ISSI): az ISPP-ra épülő Inno Setup kiegészítés, amely néhány sor elhelyezésével új funkciókkal egészíti ki a telepítőket. Ilyen például betöltőkép, háttérkép és háttérzene hozzáadásának lehetősége. Elérhető magyar nyelven is.
- Inno Setup Form Designer (ISFD): segítségével a telepítőprogram varázslójához készíthetőek új lapok egy grafikus felhasználói felület segítségével, így nem a felhasználónak kell kézzel megírnia a kódot, hanem automatikusan generálódik.
- UninsHs: Lehetőséget nyújt olyan telepítők készítésére, melyek rendelkeznek a Windows Installerben és az InstallShieldben megtalálható összetevők módosítása (modify) és javítás (repair) funkciókkal.
- Innounp: GPL-licenc alatt álló parancssoros alkalmazás, az Inno Setuppal készített telepítőprogramok visszafejtésére használható.
Jegyzetek
szerkesztés- ↑ Inno Setup 6 Revision History, 2023. február 15. (Hozzáférés: 2023. március 14.)
- ↑ Jordan Russell: Inno Setup 5 Revision History: 5.1.0-beta, 2007. szeptember 19. (Hozzáférés: 2007. szeptember 23.)
- ↑ a b c d e Jordan Russell: Információk a programról a hivatalos honlapon. (Hozzáférés: 2007. szeptember 23.)
- ↑ Shareware Industry Awards Foundation: 2002 SIA Winners and Nominees. [2007. szeptember 7-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ Shareware Industry Awards Foundation: 2003 SIA Winners and Nominees. [2007. november 1-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ Shareware Industry Awards Foundation: 2004 SIA Winners and Nominees. [2007. szeptember 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ a b c d Dave Murray: Inno Setup Review, 2004. június 27. [2007. július 8-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ RemObjects Software: Pascal Script 3.0 for Delphi. [2008. szeptember 28-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ Inno Setup Knowledge Base: Prompt for an additional folder for data. [2007. március 23-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. szeptember 23.)
- ↑ Jordan Russell: Inno Setup Frequently Asked Questions, 2006. június 26. (Hozzáférés: 2008. január 25.)
- ↑ Jordan Russell: Inno Setup 5 Revision History: 5.1.2-beta, 2008. november 18. (Hozzáférés: 2007. szeptember 23.)
- ↑ Jordan Russell: Old Inno Setup Downloads. (Hozzáférés: 2008. január 16.)
- ↑ Jordan Russell: Inno Setup 2.0 Revision History: 2.0.0-beta. (Hozzáférés: 2008. január 16.)
- ↑ Jordan Russell: Inno Setup 3.0 Revision history: 3.0.0-beta. (Hozzáférés: 2008. január 16.)
- ↑ Jordan Russell: Inno Setup 4.0 Revision History: 4.0.0-pre1. (Hozzáférés: 2008. január 16.)
- ↑ Jordan Russell: Inno Setup 4.2 Revision History. (Hozzáférés: 2008. január 16.)
- ↑ Jordan Russell: Inno Setup 5 Revision History. (Hozzáférés: 2008. január 16.)
- ↑ Inno Setup súgó Command Line Compiler Execution fejezet (angol nyelven)
Kapcsolódó szócikkek
szerkesztésKülső hivatkozások
szerkesztés- (angolul) Hivatalos honlap
- Magyar Inno Setup oldal
Kiegészítők
szerkesztés- (angolul) Inno Setup QuickStart Pack
- (angolul) ISTool
- (angolul) Inno Setup Preprocessor
- (angolul) Inno Setup Form Designer
- (angolul) Inno Setup Script Includes Archiválva 2016. március 4-i dátummal a Wayback Machine-ben
- (angolul) UninsHs
- (angolul) innoump