See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 3956|Vastuse: 6

NSIS (1) Tee lihtne paigaldaja

[Kopeeri link]
Postitatud 28.01.2024 09:42:28 | | | |
Nõuded: Arendasin rakenduse Winformi abil ja soovisin teha paigaldaja, mis paigaldaks ja käivitaks selle rakenduse, näidates, et toode on formaalsem.

Sissejuhatus NSIS-i

NSIS (Nullsoft Scriptable Install System) on professionaalne avatud lähtekoodiga süsteem Windowsi paigaldajate loomiseks. See on loodud võimalikult väikeseks ja paindlikuks, muutes selle ideaalseks internetilevitamiseks.

Kasutaja esimese kogemusena tootega on stabiilne ja usaldusväärne paigaldaja eduka tarkvara oluline osa. NSIS-iga saab luua sellise installeerija, mis suudab teha kõik vajalikud tarkvara paigaldamiseks vajalikud toimingud.

NSIS on skriptipõhine, võimaldades luua loogikat kõige keerukamate paigaldusülesannete lahendamiseks. Paljud pluginad ja skriptid on juba saadaval: saad luua veebipaigaldajaid, suhelda Windowsi ja teiste tarkvarakomponentidega, paigaldada või uuendada jagatud komponente ja palju muud.


NSIS allalaadimine:

Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.

NSIS pluginad:Hüperlingi sisselogimine on nähtav.

HM NIS redigeeri allalaadimine:

Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.

HM NIS EDIT: Tasuta NSIS redaktor/IDE: HM NIS Edit on parim redaktor/IDE Nullsoft Script Installation System (NSIS) jaoks. See on väga kasulik nii ekspertidele kui algajatele, kes kasutavad NSIS-i paigaldajate loomiseks. Selle skriptiviisard aitab sul luua tavalise installeri vaid mõne klõpsiga ning InstallOptions disainer aitab sul luua oma kohandatud lehti sõbraliku lohista-ja-langeta liidesega.

Laadi alla ja paigalda

Laadi alla NSIS ja HM NIS EDIT tarkvara, paigalda esmalt NSIS ja seejärel HM NIS EDIT, nagu allpool näidatud:



Koosta paigalduspakett

Loo uus Winformi rakendus, kasuta IDE tööriista, et luua uus Winformi rakendus .NET raamistikust 4.7.2 (välja jäetud), kompileeri see ja kasuta NSIS-i installatsioonipaketi loomiseks.

Ava HM NIS EDIT tööriist ja vali File-> New Script: Wizard, nagu allpool näidatud:



Kohanda rakenduse infot vastavalt oma tegelikule olukorrale, nagu alloleval joonisel näidatud:



Eemalda linnuke "inglise" ja valige "Lihtsustatud hiina", nagu näidatud järgmisel joonisel:



Määrake autoriseerimisfaili tee vastavalt järgmisele joonisele:



Määra rakendusfail, kustuta olemasolev konfiguratsioon ja lisa meie rakenduse kataloog, nagu alloleval joonisel näidatud:




Klõpsa Järgmine, nagu allpool näidatud:



Palun täitke programm, parameetrid ja enesearuanne vastavalt oma olukorrale, nagu alloleval joonisel näidatud:



Desinstallige programmi konfiguratsioon nagu järgmisel joonisel näidatud:



Viimane samm on salvestada see test.nsi skriptina järgmise kompilatsiooni jaoks, nagu allpool näidatud:



Kompleeri skript ja genereeri installatsioonipakett, nagu alloleval joonisel näidatud:



Lisa test.nsi kood:

(Lõpp)





Eelmine:Uuri teemasid .Net Reactive Responsive Extensionis
Järgmine:NSIS (ii) mutex tagab, et töötab ainult üks installer
 Üürileandja| Postitatud 28.01.2024 10:09:14 |

funktsioonTähtsus
JaguKõige põhilisem funktsioon esindab osakonda, mida kasutatakse komponenti esindamiseks, mis vajab paigaldamist; sektsiooni sisu on programmi viimane osa, mis käivitatakse peale desinstallimise, kuid kompileerimisel kontrollitakse esimesena, kui programmis pole sektsiooni või funktsiooni, lõpetatakse kompileerimine ning sektsiooni koodiplokk tuleb kahe ruudu sisse lükata
FunktsioonTäidetav funktsioon tuleb samuti taandada, selle funktsiooni nimi tuvastatakse, kui see on eriline nimi, viiakse see läbi konkreetsetes olukordades, mida selgitatakse allpool
SektsioonLõppNäitab osakonna lõppu, mitte sektsiooni sees sisse lükatud
FunctionEndNäitab funktsiooni lõppu, nagu eespool
SetCompressorSeadista tihendusalgoritm, järgmised parameetrid on viisardis tihendusalgoritm, kasuta /SOLID-i eesliitena, nt tahke lzma algoritm kirjutatakse kui /SOLID lzma
SetCompressorSea tihendatud mahu suurus, millele järgneb number, ja tavaliselt pole vahet, kui sa seda ei kirjuta
OutFileOtsusta kompileeritud paigalduspaketi tee üle (tulevaste paigalduspakettide tee, mitte see, millisesse kausta see panna)
NimiSea toote nimi, tavaliselt rakenduse nimi + rakenduse versioon, mis on kirjutatud viisardi esimeses sammus
InstallDirTähistab vaikimisi paigaldusrada, mis täidetakse võluri neljanda sammu esimeses real, mis määrab $INSTDIR
ShowInstDetailsParameetrid ei ole lihtsalt tõene ja väär, vaid näita, peitu ja mitte kunagi näita, mis näitavad, et detailid kuvatakse automaatselt, kasutaja nupp kuvab detailid ning paigaldusandmeid ei tohi näha
ShowUnInstDetailsNäitab, kas desinstalli detailid kuvatakse ja parameetrid on samad mis eespool
BrandingTextKuvab infot paigalduspaketi allosas, st viisardi esimeses sammus viimase kohandatud teksti rida, mis suudab vastu võtta kahte parameetrit: üks on kuvatav tekst ja valikuline parameeter /TRIM, mis määrab teksti joondamise suuna (LEFT, RIGHT või CENTER, vaikimisi on LEFT, /TRIMLEFT, /TRIMRIGHT või /TRIMCENTER tuleb kirjutada, ilma vahelist eraldatust)
SetOutPathSeda saab kirjutada ainult sektsiooni esimesele reale, mis määrab komponendi paigalduskoha, mida sektsioon esindab, erinevalt InstallDirist, võimaldab SetOutPath erinevaid komponente paigaldada kogu paigalduskataloogi erinevatesse alamkataloogidesse, soovitatav on määrata see $INSTDIR\ kaustaks komponendi nimega (või kui komponendid on omavahel sõltuvad, saab komponendi teed eraldi muuta).
SetOverWriteSeda saab kirjutada ainult sektsioonis, mida kasutatakse selleks, et määrata, kas paigaldamisel üle kirjutada, ning parameetrid on seatud nii, et alati üle kirjutada (sisse), mitte kunagi üle kirjutada (väljas), kirjutada uuema korral (ifneer), kirjutada üle, kui failisisu on erinev (ifdiff) ja proovida üle kirjutada (try), mis vastab viisardi viiendat sammu > kataloogielementide muutmist
FailSeda saab kirjutada ainult sektsioonis, mis tähendab, et sektsioon sisaldab ja pakendatud faile ning /r põgenemisparameeter esindab faile ja kaustu, mis sisaldavad alamkatalooge, ning vastavad viisardi sammud on samad mis eespool. /x parameetrit kasutatakse failide välistamiseks, saad kirjutada /x "*.ico" "xxx\*", mis tähendab ICO failide välistamist ja kõigi xxx alamkataloogi failide välistamist, mis vastab viisardi 5. sammule
CreateDictionaryLoo kaust, millele järgneb kausta täielik või suhteline tee
CreateShortwayLoo otsetee, esimene on otsetee tee (sufiks .lnk) ja teine on otsetee tee faili, mis vastab viisardi 6. sammu alumisele osale
WriteUninstallerLoo desinstallija ja seejärel eemaldaja tee nimi
WriteRegStrKirjuta registrisse, mida tavaliselt pole vaja muuta, lihtsalt järgi viisardi genereerimist
KustutamaTavaliselt kustutatakse desinstalli sektsioonis üks fail, millele järgneb kustutatud faili tee, kuna tegemist on ühe failiga, ei saa /r lisada
RMDirTavaliselt kustuta desinstalli sektsioonis kataloog ja kõik failid, millele järgneb kustutatud kataloogi tee, esimene peab tavaliselt käsitsi /r lisama, viisard ei lisanud seda sulle, kui sa seda ei lisa, siis ta desinstallib jäägi, parim on kirjutada see käsk iga alamkataloogi jaoks üks kord, pead lisama /r ja lõpuks eemaldama üldise kataloogi RMDir "$INSTDIR"
DeleteRegKeyRegistri info kustutamiseks saab tavaliselt viisardi abil selle genereerida
SetAutoCloseSeda saab kirjutada ainult jaotises, mis näitab, kas see hüppab automaatselt lõpetamisliidesesse pärast paigalduse lõppu, kasutades parameetritega tõene ja vale
AutoCloseWindowTundub, et see ei avalda mingit mõju, funktsioon tundub olevat sama mis eelmine, kuid seda saab kirjutada väljaspool sektsiooni ja parameetrid on samad mis eelpool
SõnumikastSõnumikasti saab kirjutada ainult sektsioonis või funktsioonis, seal on palju parameetreid, sealhulgas kuvamisinfo, kuvamise hoiatus, küsi jah-ei, küsi okcancelretry jne, sisesta VNISEdit-i Messagebox, et saada nimekiri kõigist parameetritest, ja seejärel ühenda sõnumikastis kuvatav sisu
Katkestadablokeerides, oodates kasutaja vastust
PeitakenPeidetud aken, mida tavaliselt kasutatakse Sektsiooni desinstallimiseks, kustutab desinstallija esmalt ise, siis kustutab teised failid (jah, programm töötab endiselt) ja sulgeb akna automaatselt pärast kustutamist


 Üürileandja| Postitatud 28.01.2024 11:07:28 |
Tagasikutsumise funktsioon

Tagasikõne funktsioon paigalduse ajal

.GUIInit
.onInit
.onGUIEnd
.onRebootFailed
.onSelChange
.onUserAbort
.onVerifyInstDir

Tagasikõne funktsioon desinstallimisel

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


Üksikasjad on järgmised:

onGUIInit:
Tagasikutse kutsutakse välja enne esimese lehe laadimist ja paigaldaja dialoogi kuvamist, mis võimaldab kasutajaliidest kohandada.

onInit:
See tagasikutsumine kutsutakse välja, kui paigaldaja on initsialiseerimise lõpetamisele lähedal. Kui .onInit funktsioon kutsub Abort'i, väljub paigaldaja kohe.

onInstFailed:
See tagasikutsumise funktsioon kutsutakse esile, kui kasutaja vajutab pärast paigaldusviga "tühista" nuppu (kui paigaldaja ei suuda ühtegi faili vabastada või kui paigaldusskript kasutab Abort-käsku).

onInstSuccess:
Tagasikutse kutsutakse välja enne, kui paigaldus õnnestub ja paigaldusaken sulgub (kui AutoCloseWindow või SetAutoClose on seadistatud valeks, võib see juhtuda pärast seda, kui kasutaja klõpsab "Sulge").

onGUIEnd:
Tagasikõne kutsutakse kohe pärast paigaldaja akna sulgemist. Kasuta vajadusel kasutajaliidesega seotud pluginate vabastamiseks.

onMouseOverSection:
Tagasikutsumine käivitatakse iga kord, kui hiir liigub puu sektsiooni valikukasti kohal. See võimaldab iga segmendi jaoks määrata näidiskirjelduse. Praeguse segmendi ID, kus hiire hõljuv asub, on ajutiselt salvestatud 0 dollari väärtuses.

onRebootFailed:
See tagasikutsumise funktsioon kutsutakse välja, kui Reboot käsk ebaõnnestub. WriteUninstaller, pluginad, File ja WriteRegBin ei ole selle tagasikutsumise funktsiooni jaoks kasutatavad.

onSelChange:
Kutsutakse, kui komponentide valiku lehe valikuid muudetakse. Tavaliselt kasutatakse SectionSetFlags ja SectionGetFlags kasutamiseks.

onUserAbort:
See tagasikõne kutsutakse siis, kui kasutaja vajutab "tühista" nuppu ja paigaldus pole veel ebaõnnestunud. Kui funktsioon kutsub Abort, siis paigaldus ei lahku.

onVerifyInstDir:
See tagasikutsumine võimaldab paigaldajal kontrollida, kas paigaldustee on kehtiv või mitte. Seda koodi kutsutakse iga kord, kui kasutaja muudab paigaldusrada. Kui funktsioon kutsub Abort'i, loetakse tee $INSTDIR-ni kehtetuks.

Üro. GUIInit:
Tagasikutse kutsutakse välja enne esimese lehe laadimist ja Uninstalleri dialoogi kuvamist, võimaldades sul reguleerida desinstallija liidest.

un.onInit:
See tagasikutse kutsutakse välja, kui desinstallija on initsialiseerimise lõpetamisele lähedal. Kui un.onInit funktsioon kasutab Abort, väljub desinstallija koheselt. Märkus: Funktsioon saab vajadusel $INSTDIR valideerida ja/või muuta.

un.onUninstFailed:
See tagasikõne funktsioon kutsutakse välja, kui kasutaja vajutab "Tühista" nuppu pärast ebaõnnestunud eemaldamist (kui kasutatakse Abort-käsku või muud ebaõnnestunud käsku).

un.onUninstSuccess:
Tagasikutse kutsutakse välja enne, kui desinstalli õnnestub ja see õigustatult sulgeb desinstalliakna (võimalik, et pärast seda, kui kasutaja vajutab "sulge", kui SetAutoClose on seatud valeks).

un.onGUIEnd:
Tagasikõne kutsutakse välja kohe pärast desinstalliakna sulgemist. Kasuta vajadusel kasutajaliidesega seotud pluginate vabastamiseks.

un.onRebootFailed:
See tagasikutsumise funktsioon kutsutakse välja, kui Reboot käsk ebaõnnestub. WriteUninstaller, pluginad, File ja WriteRegBin ei ole selle tagasikutsumise funktsiooni jaoks kasutatavad.

un.onUserAbort:
See tagasikutse kutsutakse siis, kui kasutaja vajutab "Tühista" nuppu ja desinstallimine pole ebaõnnestunud. Kui funktsioon kutsub Abort'i, siis desinstallija ei lahku.

 Üürileandja| Postitatud 28.01.2024 12:07:23 |
Kõnet tuleb kasutada funktsioonide nimedega, mis algavad "un." desinstallimise sektsioonis.
Usage: Call function_name | [:label_name]


NSIS-il on nimetamistingimused – eemaldajalt kutsutud funktsioonidel peab olema eesliide "un" nimes.

Lahendus on järgmine:

Viide:

Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.

 Üürileandja| Postitatud 28.01.2024 15:10:07 |
NSIS dokumentatsioon:https://documentation.help/NSIS/
 Üürileandja| Postitatud 09.05.2024 09:46:16 |
Advanced Installer on võimas MSI paigalduspakettide looja, mis loob MS Windowsi sertifitseeritud Windowsi paigaldajaid kasutajasõbraliku graafilise kasutajaliidesega, intuitiivse ja väga lihtsa kasutajaliidesega, muutes selle heaks Windowsi installeri kirjutajaks.
 Üürileandja| Postitatud 21.02.2025 17:36:44 |
Inno Setup on tasuta Windowsi programmi installeerija, mille on välja töötanud Jordan Russell ja Martijn Laan. Inno Setup käivitati esmakordselt 1997. aastal ning täna konkureerib ja isegi ületab paljusid kommertspaigaldajaid funktsioonide komplekti ja stabiilsuse poolest.

Veebileht:Hüperlingi sisselogimine on nähtav.

Juhtum: Ollama Windowsi rakendus,Hüperlingi sisselogimine on nähtav.
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com