Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 3956|Odgovoriti: 6

NSIS (1) Naredite preprost namestitveni program

[Kopiraj povezavo]
Objavljeno na 28. 01. 2024 09:42:28 | | | |
Zahteve: Razvil sem aplikacijo z uporabo Winform in želel narediti namestitveni program za namestitev in izvajanje te aplikacije, kar kaže, da je izdelek bolj formalen.

Uvod v NSIS

NSIS (Nullsoft Scriptable Install System) je profesionalni odprtokodni sistem za ustvarjanje namestitvenih programov za Windows. Zasnovan je tako, da je čim manjši in čim bolj prilagodljiv, zato je idealen za distribucijo prek interneta.

Kot prva izkušnja uporabnika z izdelkom je stabilen in zanesljiv namestitveni program pomemben del uspešne programske opreme. Z NSIS lahko ustvarite tak namestitveni program, ki je sposoben izvesti vse potrebne operacije za namestitev programske opreme.

NSIS temelji na skriptah, kar omogoča ustvarjanje logike za najzahtevnejše namestitvene naloge. Na voljo je že veliko vtičnikov in skript: lahko ustvarite spletne namestitvene programe, komunicirate z Windows in drugimi programskimi komponentami, namestite ali posodabljate skupne komponente in še več.


Prenos NSIS:

Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.

NSIS vtičniki:Prijava do hiperpovezave je vidna.

HM NIS EDIT prenos:

Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.

HM NIS EDIT: Brezplačni NSIS urejevalnik/IDE: HM NIS Edit je najboljši urejevalnik/IDE za Nullsoft Script Installation System (NSIS). Zelo uporabno je za strokovnjake in začetnike, ki uporabljajo NSIS za ustvarjanje namestitvenih programov. Njegov čarovnik za skripte vam bo pomagal ustvariti standardni namestitveni program z le nekaj kliki, oblikovalec InstallOptions pa vam bo pomagal ustvariti lastne prilagojene strani s prijaznim vmesnikom za povleci in spusti.

Prenesi in namesti

Prenesite programsko opremo NSIS in HM NIS EDIT, najprej namestite NSIS, nato pa namestite HM NIS EDIT, kot je prikazano spodaj:



Naredite namestitveni paket

Ustvarite novo Winform aplikacijo, uporabite orodje IDE za ustvarjanje nove Winform aplikacije .NET framework 4.7.2 (izpuščeno), jo prevedite in uporabite NSIS za ustvarjanje namestitvenega paketa.

Odprite orodje HM NIS EDIT in izberite File-> New Script: Wizard, kot je prikazano spodaj:



Prilagodite informacije o prijavi glede na svojo dejansko situacijo, kot je prikazano na spodnji sliki:



Odkljukajte "English" in izberite "Poenostavljena kitajščina", kot je prikazano na naslednji sliki:



Nastavite pot avtorizacijske datoteke, kot je prikazano na naslednji sliki:



Določite aplikacijsko datoteko, izbrišite obstoječo konfiguracijo in nato dodajte našo aplikacijsko mapo, kot je prikazano na spodnji sliki:




Kliknite Naprej, kot je prikazano spodaj:



Prosimo, izpolnite program, parametre in samoporočilo glede na vašo situacijo, kot je prikazano na spodnji sliki:



Odstrani konfiguracijo programa, kot je prikazano na naslednji sliki:



Zadnji korak je, da ga shranite kot test.nsi skripto za naslednjo prevajanje, kot je prikazano spodaj:



Prevedite skripto in ustvarite namestitveni paket, kot je prikazano na spodnji sliki:



Priložite kodo test.nsi:

(Konec)





Prejšnji:Raziskujte teme v .Net Reactive Responsive Extension
Naslednji:NSIS (ii) mutex zagotavlja, da teče le en namestitveni program
 Najemodajalec| Objavljeno na 28. 01. 2024 10:09:14 |

funkcijaPomen
OddelekNajosnovnejša funkcija predstavlja oddelek, ki se uporablja za predstavitev komponente, ki jo je treba namestiti; vsebina razdelka je zadnji del programa, ki se izvaja razen odstranitve, vendar bo prva preverjena pri prevajanju; če v programu ni razdelka ali funkcije, se prevajanje konča, blok kode v razdelku pa mora biti zamaknjen na 2 presledka
FunkcijaIzvedena funkcija mora biti prav tako zamikana, njeno ime funkcije bo prepoznano, če je prepoznana kot posebno ime, bo izvedena v posebnih okoliščinah, ki bodo pojasnjene spodaj
Konec odsekaOznačuje konec oddelka, ni vrezan znotraj odseka
FunctionEndOznačuje konec funkcije, enako kot zgoraj
SetCompressorNastavite algoritem stiskanja, naslednji parametri so algoritem stiskanja v čarovniku, solid uporabite /SOLID kot predpono, npr. algoritem solid lzma je zapisan kot /SOLID lzma
SetCompressorNastavi velikost stisnjenega glasnika, sledi številka, in običajno ni pomembno, če je ne zapišeš
OutFileOdločite se za pot prevedenega namestitvenega paketa (pot prihodnjih namestitvenih paketov, ne v katero mapo ga spraviti).
ImeNastavite ime izdelka, običajno ime aplikacije + različico aplikacije, zapisano v prvem koraku čarovnika
InstallDirPredstavlja privzeto namestitveno pot, ki je izpolnjena v prvi vrstici četrtega koraka čarovnika, ki določa vrednost $INSTDIR
ShowInstDetailsParametri niso preprosto resnični in napačni, temveč prikazuj, skrij in nikoli, kar pomeni, da se podrobnosti samodejno prikazujejo, uporabniški gumb prikazuje podrobnosti, podrobnosti o namestitvi pa niso dovoljene
ShowUnInstDetailsOznačuje, ali so podrobnosti o odstranitvi prikazane in ali so parametri enaki kot zgoraj
BrandingTextPrikazuje informacije na dnu namestitvenega paketa, torej zadnjo vrstico prilagojenega besedila v prvem koraku čarovnika, ki lahko sprejme dva parametra, eden je besedilo, ki se prikaže, in neobvezni parameter je /TRIM, ki lahko določi smer poravnave besedila (LEFT, RIGHT ali CENTER, privzeto LEFT, /TRIMLEFT, /TRIMRIGHT ali /TRIMCENTER je treba zapisati, brez kakršnekoli ločevanja)
SetOutPathPisati ga je mogoče le na prvo vrstico Sekcije, ki določa lokacijo namestitve komponente, ki jo predstavlja Sekcija; za razliko od InstallDir SetOutPath omogoča namestitev različnih komponent v različne podimenike celotne namestitvene mape, priporočljivo je nastaviti $INSTDIR\ mapo z imenom komponente (ali pa, če so komponente medsebojno odvisne, lahko ločeno prilagodite pot komponente)
SetOverWritePisati ga je mogoče le v Section, ki se uporablja za določanje, ali prepisati ob namestitvi, parametri pa se lahko nastavijo tako, da vedno prepiše (vklopljeno), nikoli ne prepiše (izklopljeno), prepiše, ko je novejša (če je novejša), prepiše, ko je vsebina datoteke drugačna (ifdiff) in poskuša prepisati (try), kar ustreza petemu koraku čarovnika > urejanju elementov imenika
DatotekaPisati ga je mogoče le v Section, kar pomeni, da Section vsebuje in pakirane datoteke, parameter /r escaping pa predstavlja datoteke in mape s podimeniki, ustrezni koraki čarovnika pa so enaki kot zgoraj. Parameter /x se uporablja za izključitev datotek, lahko zapišete /x "*.ico" "xxx\*", kar pomeni, da izključite ICO datoteke in izključite vse datoteke v xxx podmapi, kar ustreza koraku 5 čarovnika
CreateDictionaryUstvarite mapo, ki ji sledi celotna ali relativna pot mape
CreateShortcutUstvarite bližnjico, prva je pot bližnjice (pripona .lnk), druga pa pot bližnjice do datoteke, ki ustreza spodnjemu delu 6. koraka čarovnika
WriteUninstallerUstvari razdeljevalni program, ki mu sledi ime poti za odinštalacijo
WriteRegStrPiši v register, ki ga običajno ni treba spreminjati, samo sledi čarovniku za generiranje
IzbrisatiObičajno v razdelku za odstranitev izbrišete eno samo datoteko, sledi pot do izbrisane datoteke; ker gre za eno samo datoteko, ne morete dodati /r
RMDirObičajno v razdelku za odstranitev izbrišete mapo in vse datoteke v mapi, sledite poti do izbrisane mape, prva mapa običajno ročno doda /r, čarovnik vam je ni dodal, če je ne dodate, bo odstraniti ostanek, najbolje je, da ta ukaz napišete enkrat za vsako podmapo, dodate /r in na koncu odstranite splošno mapo RMDir "$INSTDIR".
DeleteRegKeyZa izbris informacij v registru lahko običajno sledite čarovniku in jih ustvarite
SetAutoCloseLahko se zapiše le v razdelku, ki označuje, ali bo samodejno skočil na vmesnik za dokončanje po zaključku namestitve, s parametri resnično in napačno
AutoCloseWindowZdi se, da nima nobenega učinka, funkcija je videti enaka kot prejšnja, vendar jo je mogoče zapisati zunaj odseka, parametri pa so enaki kot zgoraj
Sporočilni nabiralnikOkno sporočil je mogoče napisati le v Section ali Function, obstaja veliko parametrov, vključno z informacijami o prikazu, opozorilom za prikaz, ask yes no, ask okcancelretry itd., vnesite Messagebox v VNISEdit za seznam vseh parametrov in nato povežite vsebino, prikazano v polju sporočila
Prekinitevblokiranje, čakanje, da uporabnik odgovori
HideWindowSkrito okno, ki se običajno uporablja za odstranitev Section, najprej se odstranjujejo sami, nato izbrišejo druge datoteke (da, program še vedno teče) in samodejno zapre okno po brisanju


 Najemodajalec| Objavljeno na 28. 01. 2024 11:07:28 |
Funkcija povratnega klica

Funkcija povratnega klica ob namestitvi

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

Funkcija povratnega klica ob odstranitvi

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


Podrobnosti so naslednje:

onGUIInit:
Povratni klic bo poklican, preden se naloži prva stran in se prikaže inštalacijsko okno, kar vam omogoča prilagoditev uporabniškega vmesnika.

onInit:
Ta povratni klic bo poklican, ko je namestitveni program blizu zaključka inicializacije. Če funkcija .onInit pokliče Abort, namestitveni program takoj zapusti.

onInstFailed:
Ta funkcija povratnega klica se pokliče, ko uporabnik klikne gumb "prekliči" po neuspehu namestitve (če namestitveni program ne more sprostiti nobene datoteke ali če namestitveni skript uporablja ukaz Prekinitev).

onInstSuccess:
Povratni klic se pokliče, preden je namestitev uspešna in se namestitveno okno zapre (če je AutoCloseWindow ali SetAutoClose nastavljeno na false, se lahko zgodi šele po kliku uporabnika "Zapri").

onGUIEnd:
Povratni klic se pokliče takoj po zaprtju okna za monterje. Uporabite za izdajo vtičnikov, povezanih z uporabniškim vmesnikom, kadar je to potrebno.

onMouseOverSection:
Klic nazaj se sproži vsakič, ko miška premakne čez polje za izbiro drevesnega odseka. To vam omogoča, da za vsak segment nastavite vzorčni opis. ID trenutnega segmenta, kjer se nahaja miška, je bil začasno shranjen na 0 $.

onPonovni zagonNeuspešen:
Ta funkcija povratnega klica se pokliče, ko ukaz za ponovno zagon ne uspe. WriteUninstaller, vtičniki, Datoteka in WriteRegBin se ne morejo uporabiti za to funkcijo povratnega klica.

onSelChange:
Poklicano, ko se spremenijo možnosti strani za izbiro komponent. Pogosto se uporablja za uporabo SectionSetFlags in SectionGetFlags.

onUserAbort:
Ta povratni klic se sproži, ko uporabnik klikne gumb "prekliči" in namestitev še ni spodletela. Če funkcija pokliče Prekinitev, namestitev ne bo zaključena.

onVerifyInstDir:
Ta povratni klic omogoča namestitvenemu programu, da nadzoruje, ali je namestitev veljavna ali ne. Ta koda se pokliče vsakič, ko uporabnik spremeni pot namestitve. Če funkcija kliče Abort, se pot do $INSTDIR šteje za neveljavno.

Združeni narodi. GUIInit:
Povratni klic bo poklican, preden se naloži prva stran in se prikaže pogovorno okno za odprogramiranje, kar vam omogoča prilagoditev vmesnika za odprogramiranje.

un.onInit:
Ta povratni klic bo poklican, ko je razdeljevalec blizu zaključka inicializacije. Če funkcija un.onInit uporabi Abort, se razvezovalec takoj zapre. Opomba: Funkcija lahko po potrebi potrdi in/ali spremeni $INSTDIR.

un.onUninstFailed:
Ta funkcija povratnega klica se pokliče, ko uporabnik klikne gumb "Prekliči" po neuspešni odstranitvi (če je uporabljen ukaz Prekini ali drug neuspešen ukaz).

un.onUninstSuccess:
Povratni klic se pokliče pred uspešno odstranitvijo in upravičeno zapre okno za odstranjevanje (morda po kliku "zapri", če je SetAutoClose nastavljeno na napačno).

un.onGUIEnd:
Povratni klic se pokliče takoj po zaprtju okna za odinštalacijo. Uporabite za izdajo vtičnikov, povezanih z uporabniškim vmesnikom, kadar je to potrebno.

un.onPonovni zagonNeuspešen:
Ta funkcija povratnega klica se pokliče, ko ukaz za ponovno zagon ne uspe. WriteUninstaller, vtičniki, Datoteka in WriteRegBin se ne morejo uporabiti za to funkcijo povratnega klica.

un.onUserAbort:
Ta povratni klic se sproži, ko uporabnik klikne gumb "Prekliči" in odstranitev ni bila neuspešna. Če funkcija pokliče Abort, se razvezovalec ne bo zaprl.

 Najemodajalec| Objavljeno na 28. 01. 2024 12:07:23 |
Klic je treba uporabiti z imeni funkcij, ki se začnejo z "un." v razdelku za odstranitev.
Usage: Call function_name | [:label_name]


NSIS ima pogoje za poimenovanje – funkcije, ki jih kliče odinštalator, morajo imeti predpono v imenu "un".

Rešitev je naslednja:

Referenčni:

Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.

 Najemodajalec| Objavljeno na 28. 01. 2024 15:10:07 |
 Najemodajalec| Objavljeno na 9. 05. 2024 09:46:16 |
Advanced Installer je zmogljiv proizvajalec namestitvenih paketov za MSI, ki generira MS Windows certificirane namestitvene programe z uporabniku prijaznim grafičnim uporabniškim vmesnikom, intuitivnim in zelo preprostim vmesnikom, zaradi česar je dober pisec namestitvenih programov za Windows.
 Najemodajalec| Objavljeno na 21. 02. 2025 17:36:44 |
Inno Setup je brezplačen namestitveni program za Windows, ki sta ga razvila Jordan Russell in Martijn Laan. Inno Setup je bil prvič predstavljen leta 1997 in danes tekmuje in celo presega številne komercialne namestitvene programe glede nabora funkcij in stabilnosti.

Spletna stran:Prijava do hiperpovezave je vidna.

Primer: Ollama Windows aplikacija,Prijava do hiperpovezave je vidna.
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com