Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 3956|Odpoveď: 6

NSIS (1) Vytvorte jednoduchý inštalátor

[Kopírovať odkaz]
Zverejnené 28. 1. 2024 9:42:28 | | | |
Požiadavky: Vyvinul som aplikáciu pomocou Winformu a chcel som vytvoriť inštalátor na inštaláciu a spustenie tejto aplikácie, čo ukazuje, že produkt je formálnejší.

Úvod do NSIS

NSIS (Nullsoft Scriptable Install System) je profesionálny open-source systém na tvorbu inštalátorov Windows. Je navrhnutý tak, aby bol čo najmenší a najflexibilnejší, čo ho robí ideálnym pre internetovú distribúciu.

Ako prvá skúsenosť používateľa s produktom je stabilný a spoľahlivý inštalátor dôležitou súčasťou úspešného softvéru. S NSIS môžete vytvoriť takýto inštalátor, ktorý je schopný vykonať všetky operácie potrebné na inštaláciu softvéru.

NSIS je založený na skriptoch, čo vám umožňuje vytvárať logiku na zvládnutie najzložitejších inštalačných úloh. Mnohé pluginy a skripty sú už dostupné: môžete vytvárať webové inštalátory, komunikovať s Windows a ďalšími softvérovými komponentmi, inštalovať alebo aktualizovať zdieľané komponenty a ďalšie.


NSIS Download:

Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.

NSIS pluginy:Prihlásenie na hypertextový odkaz je viditeľné.

HM NIS EDIT na stiahnutie:

Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.

HM NIS EDIT: Bezplatný NSIS editor/IDE: HM NIS Edit je najlepší editor/IDE pre Nullsoft Script Installation System (NSIS). Je veľmi užitočný pre odborníkov a začiatočníkov, ktorí používajú NSIS na tvorbu inštalátorov. Jeho skriptový sprievodca vám pomôže vytvoriť štandardný inštalátor len niekoľkými kliknutiami a dizajnér InstallOptions vám pomôže vytvoriť vlastné stránky s priateľským rozhraniem drag-and-drop.

Stiahnuť a nainštalovať

Stiahnite si softvér NSIS a HM NIS EDIT, najprv nainštalujte NSIS a potom nainštalujte HM NIS EDIT, ako je uvedené nižšie:



Vytvorte inštalačný balík

Vytvorte novú Winform aplikáciu, použite nástroj IDE na vytvorenie novej Winform aplikácie pre .NET framework 4.7.2 (vynechané), skompilujte ju a použite NSIS na vytvorenie inštalačného balíka.

Otvorte nástroj HM NIS EDIT a vyberte File-> Nový skript: Sprievodca, ako je uvedené nižšie:



Prispôsobte informácie o žiadosti podľa vašej skutočnej situácie, ako je znázornené na obrázku nižšie:



Odškrtnite "English" a vyberte "Zjednodušená čínština", ako je znázornené na nasledujúcom obrázku:



Nastavte cestu k autorizačnému súboru, ako je znázornené na nasledujúcom obrázku:



Špecifikujte aplikačný súbor, vymažte existujúcu konfiguráciu a potom pridajte náš adresár aplikácií, ako je znázornené na obrázku nižšie:




Kliknite na Ďalej, ako je uvedené nižšie:



Prosím, vyplňte program, parametre a podaj si vlastné hlásenie podľa svojej situácie, ako je znázornené na obrázku nižšie:



Odinštalujte konfiguráciu programu, ako je znázornené na nasledujúcom obrázku:



Posledným krokom je uložiť ho ako test.nsi skript pre ďalšiu kompiláciu, ako je uvedené nižšie:



Skompilujte skript a vygenerujte inštalačný balík, ako je znázornené na obrázku nižšie:



Priložte kód test.nsi:

(Koniec)





Predchádzajúci:Preskúmajte témy v .Net Reactive Responsive Extension
Budúci:NSIS (ii) mutex zaručuje, že beží len jeden inštalátor
 Prenajímateľ| Zverejnené 28. 1. 2024 10:09:14 |

funkciavýznam
SekciaNajzákladnejšia funkcia reprezentuje oddelenie, používa sa na reprezentáciu komponentu, ktorý je potrebné nainštalovať, obsah sekcie je posledná časť programu, ktorá sa vykoná okrem odinštalovania, ale pri kompilácii bude prvá, ktorá sa skontroluje, ak v programe nie je sekcia alebo funkcia, kompilácia sa ukončí a kódový blok v sekcii musí byť odsadený na 2 medzery
FunkciaVykonaná funkcia musí byť tiež odsadená, jej názov funkcie bude rozpoznaný, ak je rozpoznaná ako špeciálny názov, vykoná sa za špecifických okolností, ktoré budú vysvetlené nižšie
Koniec sekcieOznačuje koniec oddelenia, nie je odsadený vo vnútri sekcie
FunctionEndOznačuje koniec funkcie, rovnako ako vyššie
SetCompressorNastavte kompresný algoritmus, nasledujúce parametre sú kompresný algoritmus v sprievodcovi, pevné použitie /SOLID ako prefixu, napríklad algoritmus solid lzma sa zapisuje ako /SOLID lzma
SetCompressorNastavte veľkosť komprimovanej hlasitosti, potom číslo, a zvyčajne nezáleží na tom, či to nenapíšete
OutFileRozhodnite sa o ceste skompilovaného inštalačného balíka (cesta budúcich inštalačných balíkov, nie do ktorého priečinka ho vložiť)
MenoNastavte názov produktu, zvyčajne názov aplikácie + verziu aplikácie napísanú v prvom kroku sprievodcu
InstallDirPredstavuje predvolenú inštalačnú cestu, ktorá sa vyplní v prvom riadku štvrtého kroku čarodejníka a určuje hodnotu $INSTDIR
ShowInstDetailsParametre nie sú jednoduché pravda a lož, ale zobrazenie, skrytie a nikdy zobrazenie, čo naznačuje, že detaily sa automaticky zobrazujú, používateľské tlačidlo zobrazuje detaily a inštalačné detaily nie sú povolené vidieť
UkážNeInstDetailyOznačuje, či sú zobrazené detaily odinštalovania a parametre sú rovnaké ako vyššie
BrandingTextZobrazuje informácie na spodku inštalačného balíka, teda posledný riadok vlastného textu v prvom kroku sprievodcu, ktorý môže akceptovať dva parametre, jeden je text na zobrazenie a voliteľný parameter je /TRIM, ktorý môže určiť smer zarovnania textu (LEFT, RIGHT alebo CENTER, predvolené je LEFT, /TRIMLEFT, /TRIMRIGHT alebo /TRIMCENTER, bez akéhokoľvek oddelenia medzi nimi)
SetOutPathMôže byť napísaný iba na prvý riadok sekcie, ktorá určuje inštalačné miesto komponentu reprezentovaného sekciou, na rozdiel od InstallDir, SetOutPath umožňuje inštaláciu rôznych komponentov do rôznych podadresárov celkovej inštalačnej adresára, odporúča sa nastaviť $INSTDIR\ priečinok s názvom komponentu (alebo ak sú komponenty navzájom závislé, môžete cestu komponentu upraviť samostatne)
SetOverWriteMôže byť zapísaný iba v sekcii, ktorá sa používa na nastavenie, či prepísať pri inštalácii, a parametre môžu byť nastavené tak, aby vždy prepisovali (zapnuté), nikdy neprepisovali (vypnuté), prepísali, keď je novší (ak novší), prepísali, keď je obsah súboru odlišný (ifdiff) a pokúsili sa prepísať (try), čo zodpovedá piatemu kroku sprievodcu > úpravu adresárových položiek
SúborMôže byť napísaný iba v sekcii, čo znamená, že sekcia obsahuje zabalené súbory a parameter /r escaping predstavuje súbory a priečinky obsahujúce podadresáre, pričom príslušné kroky sprievodcu sú rovnaké ako vyššie. Parameter /x sa používa na vylúčenie súborov, môžete zapísať /x "*.ico" "xxx\*", čo znamená vylúčiť ICO súbory a vylúčiť všetky súbory v xxx podadresári, čo zodpovedá kroku 5 sprievodcu
CreateDictionaryVytvorte priečinok nasledovaný celou alebo relatívnou cestou priečinka
CreateShortcutVytvorte skratku, prvá je cesta skratky (prípona .lnk) a druhá je cesta skratky k súboru, ktorá zodpovedá dolnej časti kroku 6 sprievodcu
WriteUninstallerVytvorte odinštalátor nasledovaný názvom cesty odinštalátora
WriteRegStrZapisujte do registra, ktorý vo všeobecnosti nie je potrebné meniť, stačí sledovať sprievodcu a generovať
OdstrániťZvyčajne v sekcii odinštalovania vymažete jeden súbor, nasledovaný cestou k vymazanému súboru, pretože je to jeden súbor, nemôžete pridať /r
RMDirZvyčajne v sekcii na odinštalovanie vymažete adresár a všetky súbory v adresári, nasledujte cestu k vymazanému adresáru, prvý zvyčajne manuálne pridáva /r, sprievodca vám ho nepridal, ak ho nepridáte, odinštaluje zvyšok, najlepšie je napísať tento príkaz raz pre každý podadresár, musíte pridať /r a nakoniec odstrániť všeobecný adresár RMDir "$INSTDIR".
DeleteRegKeyNa vymazanie informácií v registri môžete zvyčajne použiť sprievodcu a vygenerovať ich
SetAutoCloseMôže byť napísaný iba v sekcii, ktorá označuje, či automaticky preskočí na dokončenie rozhrania po dokončení inštalácie, s parametrami pravda a nepravda
AutoCloseWindowNezdá sa, že by to malo nejaký vplyv, funkcia je zrejme rovnaká ako predchádzajúca, ale dá sa zapísať mimo sekcie a parametre sú rovnaké ako vyššie
Schránka na správyOkno správy je možné napísať iba v sekcii alebo funkcii, obsahuje mnoho parametrov, vrátane zobrazovacích informácií, upozornenia na zobrazenie, pýtať sa áno alebo nie, pýtať sa okcancelretry a podobne, zadať Messagebox vo VNISEdit na získanie zoznamu všetkých parametrov a potom pripojiť obsah zobrazený v tomto poli
Prerušiťblokovanie, čakanie na odpoveď používateľa
HideWindowSkryté okno, ktoré sa zvyčajne používa na odinštalovanie sekcie, odinštalátor sa najprv sám vymaže, potom vymaže ďalšie súbory (áno, program stále beží) a automaticky zatvorí okno po vymazaní


 Prenajímateľ| Zverejnené 28. 1. 2024 11:07:28 |
Callback funkcia

Funkcia spätného volania pri inštalácii

.onGUIInit
.onInit
.onGUIEnd
.onRebootFailed
.onSelChange
.onUserAbort
.onVerifyInstDir

Funkcia spätného volania pri odinštalovaní

un.onGUIInit
un.onInit
un.onUninstFailed
un.onUninstSuccess
un.onGUIEnd
un.onRebootFailed
un.onSelChange
un.onUserAbort


Podrobnosti sú nasledovné:

onGUIInit:
Callback bude vyvolaný pred načítaním prvej stránky a zobrazením inštalačného dialógu, čo vám umožní upraviť používateľské rozhranie.

onInit:
Toto spätné volanie bude vyvolané, keď sa inštalátor blíži k dokončeniu inicializácie. Ak funkcia .onInit zavolá Abort, inštalátor okamžite ukončí prevádzku.

onInstFailed:
Táto funkcia spätného volania sa volá, keď používateľ klikne na tlačidlo "zrušiť" po zlyhaní inštalácie (ak inštalátor nemôže uvoľniť žiadne súbory alebo ak inštalačný skript použije príkaz Prerušiť).

onInstSuccess:
Callback sa volá pred úspešnou inštaláciou a zatvorením inštalačného okna (ak je AutoCloseWindow alebo SetAutoClose nastavené na false, môže to byť po kliknutí používateľa na "Zatvoriť").

onGUIEnd:
Callback sa volá hneď po zatvorení inštalatérskeho okna. Používa sa na uvoľnenie akýchkoľvek pluginov súvisiacich s používateľským rozhraním, keď je to potrebné.

onMouseOverSection:
Callback sa vyvolá vždy, keď myš prejde nad pole na výber sekcie stromu. To vám umožní nastaviť vzorový popis pre každý segment. ID aktuálneho segmentu, kde sa nachádza pohyb myšou, bolo dočasne uložené na 0 $.

onReštartZlyhal:
Táto callback funkcia sa volá, keď inštrukcia Reboot zlyhá. WriteUninstaller, plug-iny, Súbor a WriteRegBin nie je možné použiť pre túto funkciu spätného volania.

onSelChange:
Volá sa, keď sa menia možnosti na stránke výberu komponentov. Bežne používané na použitie SectionSetFlags a SectionGetFlags.

onUserAbort:
Toto spätné volanie sa vyvoláva, keď používateľ klikne na tlačidlo "zrušiť" a inštalácia ešte nebola zlyhaná. Ak funkcia zavolá Abort, inštalácia sa neukončí.

onVerifyInstDir:
Toto spätné volanie umožňuje inštalátorovi kontrolovať, či je inštalačná cesta platná alebo nie. Tento kód sa volá zakaždým, keď používateľ zmení cestu inštalácie. Ak funkcia volá Abort, cesta k $INSTDIR sa považuje za neplatnú.

Organizácia Spojených národov. GUIInit:
Callback bude zavolaný ešte pred načítaním prvej stránky a zobrazením dialógu Odinštalátora, čo vám umožní upraviť rozhranie odinštalátora.

un.onInit:
Toto spätné volanie bude vyvolané, keď sa odinštalátor blíži k dokončeniu inicializácie. Ak funkcia un.onInit použije Abort, odinštalátor sa okamžite ukončí. Poznámka: Funkcia môže validovať a/alebo upraviť $INSTDIR, ak je to potrebné.

un.onUninstFailed:
Táto funkcia spätného volania sa volá, keď používateľ klikne na tlačidlo "Zrušiť" po neúspešnom odinštalovaní (ak je použitý príkaz Prerušiť alebo iný neúspešný príkaz).

un.onUninstSuccess:
Spätné volanie sa volá ešte pred úspešným odinštalovaním a oprávnene sa okno odinštalátora zatvorí (možno po kliknutí používateľa na "zatvoriť", ak je SetAutoClose nastavené na false).

un.onGUIEnd:
Callback sa volá hneď po zatvorení okna odinštalátora. Používa sa na uvoľnenie akýchkoľvek pluginov súvisiacich s používateľským rozhraním, keď je to potrebné.

un.onRebootZlyhal:
Táto callback funkcia sa volá, keď inštrukcia Reboot zlyhá. WriteUninstaller, plug-iny, Súbor a WriteRegBin nie je možné použiť pre túto funkciu spätného volania.

un.onUserAbort:
Toto spätné volanie sa vyvolá, keď používateľ klikne na tlačidlo "Zrušiť" a odinštalovanie neprebehlo. Ak funkcia zavolá Abort, odinštalátor sa neukončí.

 Prenajímateľ| Zverejnené 28. 1. 2024 12:07:23 |
Volanie musí byť použité s názvami funkcií začínajúcimi na "un." v sekcii odinštalovania.
Usage: Call function_name | [:label_name]


NSIS má podmienky pomenovania – funkcie volané z odinštalátora musia mať predponu v názve "un".

Riešenie je nasledovné:

Referencia:

Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.

 Prenajímateľ| Zverejnené 28. 1. 2024 15:10:07 |
 Prenajímateľ| Zverejnené 9. 5. 2024 9:46:16 |
Advanced Installer je výkonný tvorca MSI inštalačných balíkov, ktorý generuje MS Windows certifikované Windows inštalátory s užívateľsky prívetivým grafickým rozhraním, intuitívnym a veľmi jednoduchým rozhraním, vďaka čomu je dobrým autorom inštalátorov Windows.
 Prenajímateľ| Zverejnené 21. 2. 2025 17:36:44 |
Inno Setup je bezplatný inštalátor programov pre Windows, ktorý vyvinuli Jordan Russell a Martijn Laan. Inno Setup bol prvýkrát uvedený na trh v roku 1997 a dnes konkuruje, ba dokonca prekonáva mnohých komerčných inštalátorov v oblasti funkcií a stability.

Webstránka:Prihlásenie na hypertextový odkaz je viditeľné.

Prípad: Ollama Windows aplikácia,Prihlásenie na hypertextový odkaz je viditeľné.
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com