Comprimere con UPX
UPX è un piccolo programma Open Source per comprimere files creato da Markus F.X.J. Oberhumer e László Molnár
Non sostituisce normali programmi di compressione come Winzip ma li affianca, UPX comprime infatti solo .exe e .dll
lasciandoli però eseguibili.
In altre parole, dopo averli compressi, i files .exe e .dll funzioneranno esattamente allo stesso modo ma occupando molto
meno spazio sul disco.
Non tutti i files, però, funzioneranno dopo la compressione. In particolare, alcuni programmi controllano ogni volta che
vengono usati se sono stati modificati o meno.
È il caso degli antivirus che, se compressi con UPX, considererebbero la modifica come opera di un virus e si rifiuterebbero di
funzionare, avvertendo l'utente di fare una scansione antivirus avviando da un dischetto pulito.
Ugualmente se comprimete un eseguibile che ha accesso a Internet alcuni Firewall potrebbero notare la modifica e notificarla.
Inoltre, molti programmi e utility di sistema sono già compressi, con UPX o programmi analoghi, per occupare meno spazio
su un eventuale floppy di emergenza.
UPX (ci sono binari per Windows, Atari e Linux) si può scaricare da qui http://upx.sourceforge.net
Le dimensioni del download sono ridottissime, per Windows si scarica un file .zip di soli 117 Kb
Una interfaccia grafica è stata annunciata (leggi sul sito) ma al momento in cui scrivo non è ancora disponibile.
Se non volete usarlo da riga di comando potete seguire le istruzioni che mostro di seguito (S.O usato Windows 98)
Scaricate dal sito di UPX il file zip contenente i binari per Windows ( upx120w.zip )
Create una cartella di nome Upx in C:\Programmi
Dentro questa cartella copiate il contenuto del file upx120w.zip
Ora aprite Notepad o un qualunque editor di testo e incollateci questo:
@echo off
copy %1 %1.old
C:\Programmi\Upx\upx.exe --best %1
pause
Salvate il file con nome upx.bat e copiatelo nella cartella C:\Programmi\Upx appena creata
Selezionate il file appena creato e fate apparire il menù con il tasto destro del mouse
Premete "Crea collegamento"
Il risultato sarà questo file ora fate Copia o Taglia e incollate questo collegamento nella cartella
C:\WINDOWS\SendTo
Ora (se volete) potete rinominare questo collegamento o cambiargli icona (se non vi piace)
Scopo dell'operazione è avere Invia a: UPX
Come detto in precedenza UPX comprime (e di parecchio) solo file con estensione di programma o dll non è quindi valido
per comprimere file con estensioni diverse.
Inoltre con la stringa vista prima viene sempre creata una copia di backup del file (ma con estensione old)
@echo off
copy %1 %1.old
C:\Programmi\Upx\upx.exe --best %1
pause
Se il file che andate a comprimere rimane delle stesse dimensioni sicuramente è stato già compresso (esempio un setup)
Le immagini di seguito mostrano come viene compresso l'eseguibile di Bfacs che è in origine di 945 Kb ma dopo essere
stato compresso con UPX scende a 312 Kb !
L'eseguibile di Bfacs (programma che si può usare anche da floppy disk ) rimane perfettamente funzionante con un risparmio
di circa 600 Kb, ho usato Bfacs solo per fare un esempio, vedete voi cosa ci volete comprimere.
Un altro esempio delle grandi capacità di UPX viene dalla compressione di rescue.exe.
Se visitate la pagina dedicata a Drive Rescue vedrete che sono disponibili due versioni del programma, ho provato a
comprimere l'eseguibile della "versione per floppy" e da 1100 Kb circa lo ho portato a 353 Kb
Ricordate che viene sempre creato una copia OLD del programma compresso, se volete tornare per qualunque motivo
all'originale sarà sufficiente rinominare il file togliendo old.
Le istruzioni date in questa pagina sono per UPX installato in C:\Programmi\Upx se volete installare il programma in un unità
disco o una cartella diversa dovete modificare chiaramente il percorso nel file .bat
Si ringrazia Carlo Luciano Bianco per avermi segnalato l'esistenza di UPX e per aver fornito numerose indicazioni utili
alla realizzazione di questa pagina.