3.3 KiB
nsisunz NSIS Plugin
Versione personale modificata
Basato su past-due/nsisunz - un plugin NSIS per estrarre file da archivi ZIP.
Descrizione Originale
nsisunz è un plugin NSIS che permette di estrarre file da archivi ZIP.
nsisunz è ideale quando si usa un altro plugin NSIS chiamato NSISdl per scaricare un file ZIP da internet. Si può creare un piccolo installer che permette all'utente di scegliere i componenti da installare e l'installer li scarica.
Origini e Storia
- nsisunz è stato originariamente scritto da Saivert (http://saivert.com/)
- Supporto NSIS Unicode aggiunto da Gringoloco023, Febbraio 2010
- Ulteriori miglioramenti di past-due, 2018+:
Funzioni
UnzipToLog
Estrae i file e mostra il log dettagliato:
InitPluginsDir
; Chiama il plugin. Prima il file ZIP, poi la cartella di destinazione.
nsisunz::UnzipToLog "$PLUGINSDIR\myzipfile.zip" "$INSTDIR"
; Controlla sempre il risultato sullo stack
Pop $0
StrCmp $0 "success" ok
DetailPrint "$0" ; stampa messaggio di errore nel log
ok:
Unzip
Estrazione veloce senza log (preferita per archivi grandi):
nsisunz::Unzip "$PLUGINSDIR\myzipfile.zip" "$INSTDIR"
Credits
- Basato sul codice di NSIS Zip2Exe - porzioni Copyright © 1999-2001 Miguel Garrido (mgarrido01@hotmail.com)
- ZLIB - Copyright © Mark Adler
- MiniZip - Copyright © 1998-2010 - di Gilles Vollant - versione 1.1 64 bits di Mathias Svensson
Licenza
Le condizioni di uso e distribuzione sono le stesse di zlib.
⚠️ Differenze nella versione personale
Questa versione è basata su past-due/nsisunz con le seguenti modifiche:
Nuova architettura supportata: x64 (amd64-unicode)
L'originale supporta:
- x86-ansi
- x86-unicode
La versione personale aggiunge il supporto per:
- amd64-unicode (x64)
Progetto Visual Studio
L'originale usa CMake per la compilazione. La versione personale include progetti Visual Studio:
Source/nsisunz.vcproj- Progetto VS2008 (legacy)Source/nsisunz.vcxproj- Progetto VS2022 (x86-ansi, x86-unicode, amd64-unicode)
File modificati/semplificati
La versione personale usa una versione più vecchia e semplificata di zlib:
Source/zlib/- Libreria zlib semplificata (solo file essenziali per decompressione)
Rispetto all'originale GitHub che include:
- CMakeLists.txt e configurazione CMake completa
- zlib 1.2.11 completa con tutti i contributi (285 file)
- Minizip completo
- Configurazione CI/CD (.github, appveyor)
File aggiunti
build_plugin.py- Script Python per compilare il plugin per tutte le architettureDoc/- Documentazione (info.rtf, nsisunz_readme.html)ExDLL/exdll.h- Header per l'API NSIS extern DLL
Compilazione
cd nsUnz
python build_plugin.py
I DLL vengono copiati in plugins/{platform}/nsisunz.dll.