Nullsoft Scriptable Install System - Nullsoft Scriptable Install System
![]() | tento článek příliš spoléhá na Reference na primární zdroje.Září 2016) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
![]() | |
![]() Instalační program NSIS | |
Původní autoři | Nullsoft |
---|---|
Vývojáři | Tým NSIS a komunita NSIS |
První vydání | 31. července 2000[1] |
Stabilní uvolnění | 3.06.1 / 31. července 2020 |
Úložiště | ![]() |
Napsáno | C, C ++ |
Operační systém | Okna, Mac OS X |
Typ | Nástroje pro vývoj softwaru |
Licence | Licence zlib |
webová stránka | nsis |
Nullsoft Scriptable Install System (NSIS) je založen na skriptu instalátor redakční nástroj pro Microsoft Windows couval Nullsoft, tvůrci Winamp. NSIS je vydáván v kombinaci licence na bezplatný software, především licence zlib.[2] Stala se široce používanou alternativou k komerční proprietární produkty jako InstallShield, s uživateli včetně Amazon.com, Dropbox, Google, Ubisoft, FL Studio, BitTorrent, a McAfee.[3]
Dějiny
NSIS byl vytvořen k distribuci Winampu.[4] Je založen na předchozím produktu Nullsoft, PiMP (plugin Mini Packager), a je také známý jako SuperPiMP. Po verze 2.0a0, projekt byl přesunut do SourceForge kde na tom začali pravidelně pracovat vývojáři mimo Nullsoft. NSIS 2.0 byl vydán přibližně o dva roky později.
NSIS verze 1 je v mnoha ohledech podobná té klasické Instalační služba systému Windows, ale podporuje více kompresních formátů. NSIS verze 2 obsahuje nové zjednodušené grafické uživatelské prostředí a podporuje LZMA komprese, více jazyků a snadno použitelný systém pluginů.
V lednu 2006 byl NSIS projektem SourceForge měsíce.[5][6]
Příklady skriptů
Ahoj světe!
!zahrnout „MUI.nsh"! insertmacro MUI_LANGUAGE "Angličtina"název "Ahoj světe!" # Název instalátoru.OutFile "HelloWorld.exe" # Název instalačního souboru.Funkce .onInit # Funkce, která bude provedena při spuštění instalačního programu. MessageBox MB_OK|MB_ICONINFORMATION "Ahoj světe!" # Zobrazit zprávu se zprávou „Ahoj světe!“. Přestat # Zavřete instalační program, protože se jedná o jednoduchý „Hello world!“ instalátor.FunctionEndSekce # Zbytečná sekce, protože se jedná o jednoduchý „Hello world!“ instalátor.SectionEnd
Jednoduchý instalátor
!zahrnout „MUI.nsh"!definovat MUI_ABORTWARNING # To uživatele upozorní, pokud opustí instalační program.! insertmacro MUI_PAGE_WELCOME # Vítejte na stránce instalačního programu.! insertmacro MUI_PAGE_DIRECTORY # Ve které složce se instaluje stránka! insertmacro MUI_PAGE_INSTFILES # Instalační stránka.! insertmacro MUI_PAGE_FINISH # Dokončená instalační stránka.! insertmacro MUI_LANGUAGE "Angličtina"název „Moje aplikace" # Název instalátoru (obvykle název aplikace k instalaci).OutFile "MyAppInstaller.exe" # Název instalačního souboru.InstallDir "$ PROGRAMFILY MyApp" # Výchozí instalace složky ($ PROGRAMFILES je složka Program Files).ShowInstDetails ukázat # Vždy se zobrazí podrobnosti instalace.Sekce „Moje aplikace" # V této části přidejte své soubory nebo složky. # Přidejte soubory pomocí „Soubor (název souboru)“, příklad: „Soubor“ $ DESKTOP MyApp.exe "" ($ DESKTOP je složka na ploše); nebo přidejte své složky vždy pomocí "Soubor (název složky) *", vždy přidejte své složky hvězdičkou, například: "Soubor / r $ DESKTOP MyApp *" (tím se přidají jeho soubory a (pomocí / r jeho podsložky)).SectionEnd
Koncepty

Skript
Program kompilátoru NSIS makensis kompiluje skripty jako následující příklad do spustitelných instalačních programů. Každý řádek ve skriptu obsahuje jeden příkaz.
# Příklad skriptunázev "Příklad 1"OutFile "jubaowu.exe"InstallDir "$ PROGRAMFILY Příklad 1"Strana AdresářStrana InstFilesSekce SetOutPath $ OKAMŽITĚ Soubor ..\makensis.exeSectionEnd
Moderní uživatelské rozhraní
Verze 2.0 představila nové volitelné zjednodušené grafické uživatelské rozhraní s názvem Moderní uživatelské rozhraní (MUI). MUI má rozhraní podobné čarodějům. Podporuje uvítací stránku, cílovou stránku, dialogové okno pro výběr jazyka, oblast popisu komponent a větší možnosti přizpůsobení než staré uživatelské rozhraní.
# Moderní ukázkový skript uživatelského rozhraní!zahrnout MUI.nshnázev "Příklad 2"OutFile "Example2.exe"! insertmacro MUI_PAGE_WELCOME! insertmacro MUI_PAGE_LICENSE "license.rtf"! insertmacro MUI_PAGE_DIRECTORY! insertmacro MUI_PAGE_COMPONENTS! insertmacro MUI_PAGE_INSTFILES! insertmacro MUI_PAGE_FINISH! insertmacro MUI_LANGUAGE "Angličtina"! insertmacro MUI_LANGUAGE "Němec"! insertmacro MUI_LANGUAGE "Francouzština"Sekce „Extrakt makensis" SetOutPath $ OKAMŽITĚ Soubor ..\makensis.exeSectionEnd
Od verze NSIS 2.30 (vydána 25. srpna 2007) je k dispozici nová verze (beta) tohoto uživatelského rozhraní: Modern UI 2 (MUI2), která je vylepšením moderního uživatelského rozhraní. Na rozdíl od staré MUI je tato verze založena na nsDialogs namísto staromódních souborů INI InstallOptions.
Od verze 2.34 (vydaná 24. prosince 2007) je tento MUI2 připraven k masové spotřebě a je součástí všech balíčků NSIS. Byly také přepnuty všechny příklady.
Moderní dokumentace UI 2.
Grafická rozhraní
Projekty NSIS lze konfigurovat jednoduchou úpravou textových souborů (s příponou .nsi). Několik třetích stran však poskytuje editační software:
- EclipseNSIS je modul pro Zatmění plošina. Umožňuje úpravy, kompilace a ověření skriptů NSIS.
- Editor HM NIS Edit (freeware) s podporou zvyku C ++ nebo Delphi zásuvné moduly.
- Venis (freeware) editor
- Visual & Installer je doplněk, který integruje NSIS s Microsoft Visual Studio IDE a umožňuje vytvářet a stavět projekty NSIS přímo v něm.
Instalační rozhraní
V posledních letech začalo několik projektů, které rozšiřují nebo nahrazují moderní uživatelské rozhraní. Rozhraní jako ExperienceUI a UltraModernUI zcela mění styl instalačního programu tím, že jej stáhne tak, aby vypadal jako InstallShield rozhraní. Další rozhraní, jako je installSpiderUI, mají za cíl minimalističtější přístup k vizuální stránce věcí při zachování stejné úrovně funkčnosti jako ASD.
Pluginy
NSIS lze rozšířit o pluginy který může komunikovat s instalačním programem. Pluginy lze psát v jakémkoli nespravovaném programovacím jazyce schopném sestavit a dynamická knihovna (například C, C ++ nebo Delphi) a lze je použít k provedení instalačních úkolů nebo k rozšíření instalačního rozhraní. Plugin lze volat pomocí jediného řádku kódu NSIS.
Několik modulů plug-in je dodáváno s balíčkem NSIS, který umožňuje instalačnímu programu zobrazit úvodní obrazovku, zobrazit vlastní stránku, zobrazit obrázek na pozadí, stáhnout soubory z webu, provádět matematické operace, opravné soubory a další.
Další doplňky jsou k dispozici online, včetně ZipDLL, a Krajta zapojit.
Funkce
NSIS podporuje následující funkce:[7]
- zlib, bzip2, a LZMA komprese
- Skriptové
- Vícejazyčné
- Zapojit Podpěra, podpora
- Skript preprocesor
Generovaný instalátor
Vygenerovaný instalátor je Přenosný spustitelný soubor, s instalačními soubory archivovanými v instalačním programu, režie 34 KB pro instalační program NSIS,[7] a instalační skript zkompilovaný do spustitelného kódu. Při kompilaci instalačního skriptu nelze skript získat z dodaného spustitelného souboru bez zpětného inženýrství binárního souboru.
Archiv lze rozbalit pomocí 7-zip, Total Commander plugin InstallExplorer nebo FAR manažer plugin InstallExplorer.
Archiv obsahuje několik složek:
- $ PLUGINSDIR : instalační rutina pluginy
- $ OKAMŽITĚ : soubory použité během instalace
- $ _OUTDIR : soubory k instalaci.
Vygenerovaný instalační program obsahuje argumenty příkazového řádku, aby uživatelé měli větší kontrolu:[8]
- / NCRC zakáže kontrolu CRC, pokud ji skript nevynutí
- / S spustí tiše instalační / odinstalační program.
- / D nastaví výchozí instalační adresář. Musí to být poslední parametr a nesmí obsahovat žádné uvozovky. Podporovány jsou pouze absolutní cesty.
Podpora Unicode
Verze NSIS před 3.0 nepodporovaly Unicode, ale pouze prostředek k převodu některých souborů do různých kódování pomocí pluginu.[9] K dispozici je však varianta NSIS, která má plnou podporu Unicode.[10] Pozoruhodné projekty využívající tuto variantu jsou:[11]
- Google (Picasa )
- Apache OpenOffice pro Windows
- Mozilla (Firefox, Mozilla Thunderbird )
- FileZilla
- Winamp
- Flickr
- PortableApps.com
- Druhý život
- Xampp
- CherryPlayer
- AVG
- TeamViewer
S vydáním verze 3.0 NSIS lze podporu Unicode implementovat pomocí direktivy překladače „Unicode true“. To poskytuje plnou podporu Unicode bez dalších změn kódu, ale instalační program nebude fungovat pod Windows 95/98 / Me.[12] Od roku 2016 před vydáním 3.0 byl NSIS k dispozici v Přenosné aplikace formát pro Unicode 2.46.5 Rev 3 a ANSI 2.51.[13]
Viz také
Reference
- ^ Historie verzí NSIS 1.x. - NSIS wiki
- ^ „Licenční stránka NSIS“. NSIS.
- ^ „Uživatelé - NSIS“.
- ^ Vydán Winamp 2.60, From Betanews, 2000-02-14, Tweakers, ... jmenovitě s novým instalačním systémem 'SuperPiMP' ...
- ^ Projekt měsíce SourceForge.net v lednu 2006
- ^ „Porovnání instalační platformy OpenCandy“. Archivovány od originálu dne 27. června 2011. Citováno 27. června 2011.CS1 maint: BOT: stav původní adresy URL neznámý (odkaz)
- ^ A b "Funkce". NSIS.
- ^ "installerUsage". NSIS.
- ^ „Doplněk Unicode“. NSIS.
- ^ „Stránka projektu Unicode NSIS“.
- ^ „Uživatelé projektu Unicode NSIS“.
- ^ „Uživatelská příručka NSIS, kapitola 1“. NSIS. Citováno 26. května 2015.
- ^ „NSIS Portable“. PortableApps.com. 19. května 2016. Citováno 4. července 2016.