Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 3956|Válasz: 6

NSIS (1) Egyszerű telepítő készítése

[Linket másol]
Közzétéve 2024. 01. 28. 9:42:28 | | | |
Követelmények: Fejlesztettem egy alkalmazást Winform segítségével, és szerettem volna telepítőt készíteni az alkalmazás telepítéséhez és futtatásához, ami bizonyítja, hogy a termék formálisabb.

Bevezetés az NSIS-be

Az NSIS (Nullsoft Scriptable Install System) egy professzionális nyílt forráskódú rendszer Windows telepítők létrehozására. Úgy tervezték, hogy a lehető legkicsibb és rugalmasabb legyen, így ideális az internetes terjesztéshez.

A felhasználó első tapasztalata egy termékkel egy stabil és megbízható telepítő fontos része a sikeres szoftvernek. Az NSIS-szel olyan telepítőt lehet létrehozni, amely képes elvégezni az összes szoftver telepítéséhez szükséges műveletet.

Az NSIS szkript-alapú, lehetővé téve logikát létrehozni a legösszetettebb telepítési feladatok kezelésére. Számos plugin és szkript már elérhető: webtelepítőket készíthetsz, kommunikálhatsz Windows-szel és más szoftverkomponensekkel, telepíthetsz vagy frissíthetsz közös komponenseket, és még sok más.


NSIS letöltés:

A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.

NSIS pluginok:A hiperlink bejelentkezés látható.

HM NIS SZERKESZTÉS letöltés:

A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.

HM NIS SZERKESZTÉS: Ingyenes NSIS szerkesztő/IDE: HM NIS Edit a legjobb szerkesztő/IDE a Nullsoft Script Installation System (NSIS) számára. Nagyon hasznos szakértők és kezdők számára, akik az NSIS-t használják telepítők létrehozásához. A szkriptvarázsló néhány kattintással segít egy szabványos telepítőt létrehozni, az InstallOptions tervezője pedig segít saját egyedi oldalakat létrehozni barátságos húzás-dobás felülettel.

Letöltés és telepítés

Töltsd le az NSIS és HM NIS EDIT szoftvert, telepítsd először az NSIS-t, majd telepítsd a HM NIS EDIT-et, ahogy az alábbiakban látható:



Építs telepítési csomagot

Hozz létre egy új Winform alkalmazást, használd az IDE eszközt egy új Winform alkalmazáshoz a .NET framework 4.7.2-ből (kihagyva), fordítsd le, és használd az NSIS segítségével telepíthető csomagot.

Nyisd meg a HM NIS EDIT eszközt, és válaszd ki a File-> New Script: Wizard (File- New Script: Wizard, ahogy az alábbiakban látható:



Személyre szabd az alkalmazás adatait a tényleges helyzetedhez, ahogy az alábbi ábrán látható:



Kapcsold ki a "English" opciót, és válaszd ki a "Simplified Chinese" (Egyszerűsített kínai) kifejezést, ahogy az alábbi ábrán látható:



Állítsd be az engedélyezési fájl útját az alábbi ábrán látható módon:



Megadjuk az alkalmazásfájlt, töröljük a meglévő konfigurációt, majd hozzáadjuk az alkalmazáskönyvtárunkat, ahogy az alábbi ábrán látható:




Kattints a Next-re, ahogy az alábbiakban látható:



Kérjük, töltse ki a programot, a paramétereket és az önbeszámolót saját helyzete szerint, ahogy az alábbi ábrán látható:



A program konfigurációjának eltávolítása az alábbi ábrán látható módon:



Az utolsó lépés, hogy test.nsi szkriptként mentsük el a következő fordításhoz, ahogy az alábbiakban látható:



Fordítsd le a szkriptet, és generáld az installációs csomagot az alábbi ábrán látható módon:



Csatolja a test.nsi kódot:

(Vége)





Előző:Fedezze fel a .Net Reactive Responsive Extension témáit
Következő:Az NSIS (ii) mutex garantálja, hogy csak egy telepítő fut
 Háziúr| Közzétéve 2024. 01. 28. 10:09:14 |

funkciójelentőség
SzakaszA legalapvetőbb függvény egy részleget képvisel, amelyet egy telepítendő komponens ábrázolására használnak; a szekció tartalma a program utolsó végrehajtandó része, kivéve az eltávolítást, de ez lesz az első, amit a fordítás során ellenőriz, ha nincs szekció vagy függvény a programban, a fordítás megszűnik, és a kódblokkot 2 helyre kell behúzni
FunkcióA végrehajtott függvényt be kell bontani, a függvény neve felismerhető, ha különleges névként ismerik el, akkor meghatározott körülmények között történik, amit alább magyarázunk
SzakaszVégeA részleg végét jelzi, nem behúzva a szakaszon belül
FunctionEndJelzi a függvény végét, ugyanúgy, mint fentebb
SetCompressorÁllítsuk be a tömörítési algoritmust, a következő paraméterek a varázslóban lévő tömörítési algoritmus, a szilárd betűt a /SOLID előtagként használják, például a szilárd lzma algoritmus /SOLID lzma formátumban van írva,
SetCompressorÁllítsd be a tömörített térfogat méretét, majd egy számot, és általában nem számít, ha nem írod meg.
OutFileDöntsd el a fordított telepítési csomag útvonalát (a jövőbeli telepítési csomagok útvonalát, nem azt, hogy melyik mappába helyezzük)
NévÁllítsd be a termék nevét, általában az alkalmazás nevét + az alkalmazás verziót, amely a varázsló első lépésében íródott
InstallDirAz alapértelmezett telepítési útvonalat jelenti, amelyet a varázsló negyedik lépésének első sorában töltenek ki, amely meghatározza a $INSTDIR értékét
ShowInstDetailsA paraméterek nem egyszerű igaz és hamis, hanem a show, hide és nevershow, amelyek jelzik, hogy a részletek automatikusan megjelennek, a felhasználói gomb megjeleníti a részleteket, és a telepítési részletek nem láthatóak
ShowUnInstDetailsJelzi, hogy az eltávolítási részletek megjelennek-e, és a paraméterek ugyanazok-e a fentiekkel.
BrandingTextAz installációs csomag alján jeleníti meg az információkat, vagyis a varázsló első lépésének utolsó egyedi szövegsorát, amely két paramétert fogadhat: az egyik a megjelenítendő szöveg, az opcionális paraméter pedig /TRIM, amely meghatározhatja a szöveg igazításának irányát (BAL, JOBB vagy KÖZÉP, az alapértelmezett BAL, /TRIMLEFT, /TRIMRIGHT vagy /TRIMCENTER betűkkel kell írni, külön megkülönböztetés nélkül).
SetOutPathCsak a szekció első sorára írható, amely meghatározza a rész által képviselt komponens telepítési helyét, eltér az InstallDir-től, a SetOutPath lehetővé teszi, hogy különböző komponenseket telepítsenek a teljes telepítési könyvtár különböző alkönyvtáraiba, ajánlott $INSTDIR\ mappába állítani a komponens nevével (vagy ha az összetevők egymástól függenek, külön állíthatod az útvonalat)
SetOverWriteCsak a Section (Section) funkcióban írható, amely beállíthatja, hogy felülírjuk-e telepítéskor, és a paraméterek úgy állíthatód: mindig felülírni (on), soha nem felülírni (off), felülírni, ha újabbnak (ifneer), felülírni, ha a fájltartalom eltér (ifdiff), és próbálják felülírni (try), ami a wizard ötödik lépéséhez > a könyvtárelemek szerkesztéséhez kapcsolódik
FájlCsak a Section (Section) formátumban lehet írni, ami azt jelenti, hogy a Section tartalmazza és csomagolt fájlokat tartalmaz, a /r escaping paraméter pedig az alkönyvtárakat tartalmazó fájlokat és mappákat jelöli, és a megfelelő varázsló lépések megegyeznek a fentiekkel. A /x paramétert a fájlok kizárására használják, írhatod a /x "*.ico" "xxx\*"-t, ami azt jelenti, hogy kizárjuk az ICO fájlokat és kizárod az összes fájlt az xxx alkönyvtárból, ami a varázsló 5. lépésének felel meg
CreateDictionaryHozz létre egy mappát, majd a mappa teljes vagy relatív útját
CreateShortcutHozz létre egy rövidítést, az első a gyorsítvány útja (.lnk utótag), a második pedig a rövidítés útja a fájlhoz, ami a varázsló 6. lépésének alsó részének felel meg
WriteUninstallerHozz létre egy eltávolítót, majd az eltávolító útnevét
WriteRegStrÍrj a regiszterbe, amit általában nem kell megváltoztatni, csak kövesd a varázslatot a generáláshoz
TörölÁltalában az eltávolítás szakaszban törölj egy fájlt, majd a törölt fájl útvonalát, mivel ez egy fájl, nem lehet /r hozzáadni
RMDirÁltalában az eltávolítás szakaszban töröld a könyvtárat és az összes fájlt, majd a törölt könyvtár útvonalát, az elsőnek általában manuálisan kell hozzáadnia /r-t, a varázsló nem adta hozzá, ha nem adod be, akkor eltávolítja a maradékot, a legjobb, ha minden alkönyvtárhoz egyszer írod ezt a parancsot, hozzáadni kell /r-t, és végül eltávolítani az általános RMDir "$INSTDIR" könyvtárat
DeleteRegKeyA regisztrációs adatok törléséhez általában követheted a varázslatot a generáláshoz
SetAutoCloseCsak a Section (Section) megírható, amely jelzi, hogy a telepítés után automatikusan ugrik-e a befejezési felületre, az igaz és hamis paraméterekkel
AutoCloseWindowÚgy tűnik, nincs hatása, a függvény ugyanaz, mint az előző, de a szakaszon kívül is írható, és a paraméterek ugyanazok a fentiekhez képest
ÜzenetdobozAz üzenetdoboz csak Section vagy Function formátumban írható, sok paraméter van, például megjelenítési információk, megjelenítési figyelmeztetés, ask yes ne, ask okcancelretry stb., írd be az Messageboxot a VNISEdit-be, hogy megkapd az összes paraméter listáját, majd kövesd össze az üzenetdobozban megjelenített tartalmat
Elvetélblokkolva, várva a felhasználó válaszára
HideWindowRejtett ablak, amit általában a Section eltávolítására használnak, az eltávolító először önmagát törli, majd más fájlokat törl (igen, a program még fut), és automatikusan bezárja az ablakot a törlés után


 Háziúr| Közzétéve 2024. 01. 28. 11:07:28 |
visszahívási funkció

Visszahívás funkció a telepítéskor

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

Visszahívás funkció eltávolításkor

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


A részletek a következők:

onGUIInit:
A visszahívást az első oldal betöltése előtt hívják, és megjelenik az installer párbeszéd, így módosíthatod a felhasználói felületet.

onInit:
Ezt a visszahívást akkor hívják meg, amikor a telepítő közel van az inicializáció befejezéséhez. Ha a .onInit függvény Abort-ot hív, a telepítő azonnal kilép.

onInstFailed:
Ezt a visszahívási funkciót akkor hívják meg, amikor a felhasználó a telepítési hiba után rákattint a "cancel" gombra (ha a telepítő nem tud fájlt kiadni, vagy ha a telepítési szkript a megszakítás parancsot használja).

onInstSuccess:
A visszahívást a telepítés sikere előtt hívják meg, és az installációs ablak bezáródik (ha az AutoCloseWindow vagy a SetAutoClose hamisnak van állítva, az akkor lehet, hogy a felhasználó "Zárás" gombra kattint.

onGUIEnd:
A visszahívást közvetlenül azután hívják, hogy a telepítő ablak bezárult. Használd arra, hogy szükség esetén kiadd a felhasználói felülethez kapcsolódó bővítményeket.

onMouseOverSection:
A visszahívás akkor indul, amikor az egér átlép a fa szakasz kiválasztó mezőjén. Ez lehetővé teszi, hogy minden szegmenshez mintaleírást állíts be. A jelenlegi szegmens, ahol az egér lefelé vezető helyen található, azonosítója ideiglenesen 0 dollárnál mentett el.

onRebootFailed:
Ezt a visszahívási függvényt akkor hívják meg, amikor a Reboot utasítás meghibásodik. A WriteUninstaller, a bővítmények, a File és a WriteRegBin nem használhatók ehhez a visszahívási funkcióhoz.

onSelChange:
Akkor hívják, amikor a komponensválasztási oldal opciói megváltoznak. Gyakran használják SectionSetFlags és SectionGetFlags használatára.

onUserAbort:
Ezt a visszahívást akkor hívják meg, amikor a felhasználó rákattint a "cancel" gombra, és a telepítés még nem sikerült meg. Ha a függvény Megszakítást hív, az installáció nem fog kilépni.

onVerifyInstDir:
Ez a visszahívás lehetővé teszi a telepítődnek, hogy szabályozza, érvényes-e a telepítési útvonal. Ezt a kódot minden alkalommal hívják meg, amikor a felhasználó megváltoztatja a telepítési útvonalat. Ha a függvény "Megszakítást" hívja, az $INSTDIR-hez vezető út érvénytelennek minősül.

ENSZ. GUIInit:
A visszahívást az első oldal betöltése előtt hívják meg, és megjelenik az Eltávolító párbeszéd, így módosíthatod az eltávolító felületet.

un.onInit:
Ezt a visszahívást akkor hívják meg, amikor az eltávolító közel van az inicializáció befejezéséhez. Ha az un.onInit függvény az Abort-ot használja, az eltávolító azonnal kilép. Megjegyzés: A függvény szükség esetén érvényesítheti és/vagy módosíthatja a $INSTDIR.

un.onUninstFailed:
Ezt a visszahívási funkciót akkor hívják el, amikor a felhasználó megnyomja a "Cancel" gombot az eltávolítás sikertelensége után (ha az Abort parancsot vagy más sikertelen parancsot használják).

un.onUninstSuccess:
A visszahívást a törlés sikeressége előtt hívják le, és jogosan bezárná az eltávolító ablakot (esetleg miután a felhasználó rákattint a "zárásra", ha a SetAutoClose hamisnak van állítva).

un.onGUIEnd:
A visszahívást közvetlenül azután hívják, hogy az eltávolító ablak bezárul. Használd arra, hogy szükség esetén kiadd a felhasználói felülethez kapcsolódó bővítményeket.

un.onRebootFailed:
Ezt a visszahívási függvényt akkor hívják meg, amikor a Reboot utasítás meghibásodik. A WriteUninstaller, a bővítmények, a File és a WriteRegBin nem használhatók ehhez a visszahívási funkcióhoz.

un.onUserAbort:
Ezt a visszahívást akkor hívják meg, amikor a felhasználó rákattint a "Cancel" gombra, és az eltávolítás nem sikerült meg. Ha a függvény Megszakítást hív, az eltávolító nem lép ki.

 Háziúr| Közzétéve 2024. 01. 28. 12:07:23 |
A hívást olyan funkciónevekkel kell használni, amelyek az eltávolítási részben "un." betűvel kezdődnek.
Usage: Call function_name | [:label_name]


Az NSIS-nek elnevezési feltételei vannak – az eltávolítóból hívott függvényeknek előtaggal kell rendelkezniük az "un" névben.

A megoldás a következő:

Utalás:

A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.

 Háziúr| Közzétéve 2024. 01. 28. 15:10:07 |
NSIS dokumentáció:https://documentation.help/NSIS/
 Háziúr| Közzétéve 2024. 05. 09. 9:46:16 |
Az Advanced Installer egy erős MSI telepítő csomagkészítő, amely MS Windows tanúsított Windows telepítőket generál felhasználóbarát grafikus felülettel, intuitív és nagyon egyszerű felülettel, így jó Windows telepítő író.
 Háziúr| Közzétéve 2025. 02. 21. 17:36:44 |
Az Inno Setup egy ingyenes Windows programtelepítő, amelyet Jordan Russell és Martijn Laan fejlesztett. Az Inno Setup először 1997-ben indult, és ma már számos kereskedelmi telepítőt vetekei és akár túl is származnak funkciókészlet és stabilitás tekintetében.

Weboldal:A hiperlink bejelentkezés látható.

Eset: Ollama Windows alkalmazás,A hiperlink bejelentkezés látható.
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com