Files
nsis-plugin-ns7zip/versions/19.00/README.md
T
Simone d074cc7c07 chore: initial commit (extracted from Launchers monorepo)
Plugin: ns7zip v2.0.0
Architectures: x86-ansi, x86-unicode, amd64-unicode
License: LGPL-2.1-or-later
2026-04-29 14:07:51 +02:00

135 lines
5.9 KiB
Markdown

# Nsis7z Plugin - 7-Zip 19.00
**Plugin NSIS per l'estrazione di archivi 7z**
## Informazioni
| Proprietà | Valore |
|------------------|---------------------------------------------------------|
| Versione 7-Zip | 19.00 |
| Autore originale | Afrow UK |
| Basato su | 7-Zip by Igor Pavlov |
| Modifiche | Supporto x64, VS2022/VS2026, ExtractWithFileCallback |
## Formati Supportati
| Formato | Estensione | Crittografia |
|---------|------------|----------------|
| 7z | .7z | AES-256 |
| LZMA | .lzma | — |
| XZ | .xz | — |
| Split | .001 | — |
### Codec 7z Supportati
- LZMA / LZMA2
- PPMd
- BCJ / BCJ2 (filtri)
- Delta
- Copy
## Architetture
| Architettura | Descrizione |
|-----------------|-----------------------|
| x86-ansi | 32-bit ANSI (legacy) |
| x86-unicode | 32-bit Unicode |
| amd64-unicode | 64-bit Unicode |
## Usage
```nsis
!addplugindir "plugins\x86-unicode"
Section
; Extract 7z archive
Nsis7z::ExtractWithDetails "$EXEDIR\data.7z" "Installing package %s..."
; Or simple extraction
Nsis7z::Extract "$EXEDIR\data.7z"
SectionEnd
```
### Functions
#### Nsis7z::Extract
```nsis
Nsis7z::Extract "archive.7z"
```
Extracts the archive to `$OUTDIR` silently.
#### Nsis7z::ExtractWithDetails
```nsis
Nsis7z::ExtractWithDetails "archive.7z" "Installing %s..."
```
Extracts the archive showing progress with the specified format string.
#### Nsis7z::ExtractWithCallback
```nsis
Nsis7z::ExtractWithCallback "archive.7z" callback_function
```
Extracts with a callback that receives `completedSize` and `totalSize`.
#### Nsis7z::ExtractWithFileCallback (Nuovo)
```nsis
Nsis7z::ExtractWithFileCallback "archive.7z" callback_function
```
Extracts with a callback that receives `completedSize`, `totalSize` and `fileName`.
> Questa funzione è stata aggiunta nella versione personale.
## Compilazione
### Requisiti
- Visual Studio 2022 o 2026 con workload C++
- Python 3.x
### Build
```powershell
cd ns7zip
# VS2022
python build_plugin_vs2022.py
# VS2026
python build_plugin_vs2026.py
```
### Opzioni
```powershell
python build_plugin_vs2022.py --configs x64-unicode --verbosity minimal
```
## Ricostruzione Sorgenti
Per ricostruire i sorgenti originali da zero:
```powershell
cd ns7zip
.\rebuild_nsis7z1900-src.ps1
```
Lo script scarica 7-Zip 19.00 da 7-zip.org e unisce i file del plugin NSIS.
## License
- **7-Zip**: LGPL 2.1 + BSD 3-clause
- **Plugin NSIS**: Afrow UK
## Credits
- Igor Pavlov (7-Zip)
- Afrow UK (Plugin originale)
- Simone (Supporto x64, VS2022/VS2026, ExtractWithFileCallback)