Rendere “portable” un programma è un’operazione che, talvolta, può rivelarsi non semplice da eseguire. Con gli strumenti giusti ed alcune accortezze, però, è spesso possibile raggiungere l’obiettivo senza troppo penare.
Poter portare con sé una qualunque applicazione memorizzandola, ad esempio, in una comune chiavetta USB ed avviarla da qualunque sistema semplicemente facendo doppio clic sul suo eseguibile è certamente il sogno di molti. La strada che consente di rendere portabile un programma è tuttavia assai irta di ostacoli.
La maggior parte delle applicazioni che, per poter essere avviate, necessitano il previo utilizzo di una procedura d’installazione, spesso inseriscono nuove informazioni nel registro di sistema di Windows (tali dati sono necessari per il corretto funzionamento del programma) oppure aggiungono alcuni file in altre cartelle.
Il problema principale, quindi, consiste nell’individuazione dei file e delle voci di registro da copiare dal sistema di origine a quello di destinazione. In altre parole, è indispensabile stabilire quali file debbono essere salvati nella chiavetta USB in modo che, facendo doppio clic sull’eseguibile del programma, collegando l’unità ad un personal computer sul quale il programma non è stato mai installato, l’applicazione stessa si avvi comunque senza problemi.
Talvolta, per rendere portabile un’applicazione già installata, potrebbe bastare semplicemente copiare il contenuto della sua cartella principale, di solito presente in C:\Programmi
o in C:\Programmi (x86)
. Salvando tale cartella in un’unità USB ed eseguendo il programma da un altro personal computer (si dovrà fare doppio clic sul suo file .exe
), con un po´ di fortuna, si potrebbe vedere partire regolarmente l’applicazione.
Qual è il problema in questo caso? Avviando il programma dalla cartella nella quale si è copiato, a partire dal sistema di origine, il contenuto della directory C:\Programmi\nomeapplicazione
, l’eseguibile creerà verosimilmente delle nuove chiavi all’interno del registro di Windows.
Un’applicazione portabile non dovrebbe creare chiavi nel registro di sistema o modificare quelle già presenti, tanto meno aggiungere file in altre locazioni del sistema.
Bisognerebbe quindi accertarsi che le chiavi di registro ed i file aggiunti dal programma vengano cancellati alla chiusura dell’applicazione stessa. Solo in questo modo si potrà ripristinare la situazione precedente all’avvio del programma.
Il consiglio numero uno: svolgere tutti gli esperimenti in una macchina virtuale
Come ci capita spesso di rammentare, quando si vogliono effettuare degli esperimenti software, il suggerimento migliore è sempre quello di installare VirtualBox in modo tale da effettuare tutte le prove in un ambiente di test. Se qualcosa dovesse andare per il verso sbagliato, infatti, non si rischierà di minare la stabilità dell’intero sistema che si utilizza tutti i giorni, ad esempio, per l’attività lavorativa.
Il nostro consiglio è quindi quello di installare una copia “pulita” di Windows XP, Windows Vista o Windows 7, a seconda delle proprie esigenze, in una macchina virtuale VirtualBox. Completato questo passaggio, si potrà provare ad avviare le applicazioni che si stanno cercando di rendere portabili.
Qual è il vantaggio? Si avrà a disposizione un sistema operativo di test sul quale verificare il comportamento del programma che si vuol provare a rendere “portable” senza intaccare in alcun modo il funzionamento e la configurazione delle macchine che si usano “in produzione”.
Facendo riferimento alle risorse che seguono, potrete trovare una serie di guide pratiche per l’installazione e l’utilizzo di Oracle VirtualBox. La procedura per generare una nuova macchina virtuale ed installare un qualsiasi sistema operativo supportato (ad esempio, Windows o Linux) in VirtualBox è molto semplice ed è stata più volte oggetto di approfondimenti. Vi invitiamo quindi a rileggere i nostri articoli in materia:
– Avviare più sistemi operativi differenti sulla stessa macchina con VirtualBox
– Eseguire una macchina virtuale VMware Windows 7 con Oracle VirtualBox
– Come installare e provare Windows 8 senza modificare la configurazione del sistema
– Creare e ripristinare facilmente una copia di backup delle macchine virtuali VirtualBox
– Trasformare il computer che si usa tutti i giorni in una macchina virtuale
– VirtualBox: condividere file e cartelle tra sistemi host e macchine virtuali
– Come creare e gestire macchine virtuali con VirtualBox
– Espandere un hard disk VirtualBox in poche mosse: ecco la procedura pratica
Consiglio numero due: creare un backup della macchina virtuale ed usare la funzionalità “Ripristino configurazione del sistema”
Quando si fanno delle prove è normale che qualcosa non vada per il verso giusto o che comunque i risultati siano ben lungi dall’essere quelli attesi. Prima di eseguire l’applicazione che si sta cercando di rendere portable dalla macchina virtuale, suggeriamo caldamente di creare una copia di backup della stessa macchina virtuale VirtualBox. La procedura da seguire è illustrata nell’articolo Creare e ripristinare facilmente una copia di backup delle macchine virtuali VirtualBox. I benefici sono evidenti: se si avesse l’esigenza di ripartire con una di Windows pulita non si dovrà reinstallare di sana pianta l’intero sistema operativo all’interno della macchina virtuale; basterà semplicemente ripristinarne la copia di backup.
Ad ogni modo, come misura aggiuntiva, consigliamo di creare un punto di ripristino del sistema utilizzando la funzionalità integrata in Windows. La creazione manuale del punto di ripristino dovrebbe essere richiesta immediatamente prima dell’esecuzione del programma che si sta provando a rendere portabile.
In caso di necessità si potrà così riportare il sistema virtuale allo stato in cui si trovava subito prima dell’esecuzione del programma.
Per creare manualmente un punto di ripristino del sistema è sufficiente fare clic con il tasto destro del mouse sull’icona Computer, scegliere la voce Proprietà, cliccare su Impostazioni di sistema avanzate quindi sulla scheda Protezione sistema. Il pulsante Crea in basso consentirà la creazione del punto di ripristino previa assegnazione di un nome.
– Windows 7: a spasso nel tempo con la funzionalità “Versioni precedenti”
Un esempio semplice: LibreOffice
Rendere portabile un programma come LibreOffice è tutto sommato molto semplice. Supponiamo di averlo già installato sul sistema. Copiando la cartella d’installazione (esempio: C:\Programmi\LibreOffice
) della suite per l’ufficio in una chiavetta USB, con un doppio clic sul file \program\swriter.exe
si avvierà il programma per l’editing dei documenti.
LibreOffice non aggiunge informazioni all’interno del registro di sistema di Windows. L’unica operazione che viene effettuata alla prima esecuzione di uno dei programmi che compongono la suite è la creazione della cartella %userprofile%\AppData\Roaming\LibreOffice
. Come lo si è potuto stabilire? Semplicemente avvalendoci di un programma gratuito com’è TrackWinstall (è scaricabile facendo riferimento ai link seguenti: versioni di Windows a 32 bit; versioni di Windows a 64 bit).
Sviluppato da un programmatore tedesco, TrackWinstall consente di verificare quali modifiche vengono applicate al sistema durante l’esecuzione di una qualunque procedura d’installazione oppure dopo aver avviato un programma.
Nel nostro caso, basta cliccare sul pulsante One-Click Protocol quindi specificare, ad esempio, il file eseguibile di LibreOffice Writer. TrackWinstall provvederà ad effettuare una scansione dell’intero sistema memorizzandone la configurazione prima dell’avvio di LibreOffice Writer. Successivamente, dopo il caricamento di LibreOffice Writer, TrackWinstall mostrerà l’elenco delle variazioni che sono state apportate al registro di sistema ed al file system.
Dal file di testo che propone TrackWinstall bisognerà aver cura di individuare, con certezza, soltanto le voci di registro, i file e le cartelle aggiunti da LibreOffice.
Analizzando il responso fornito da TrackWinstall, nel nostro caso si è potuto agevolmente risalire alla cartella %userprofile%\AppData\Roaming\LibreOffice
.
Affinché l’applicazione sia davvero portabile, quindi, la cartella sopra citata dovrebbe essere eventualmente eliminata dopo ogni esecuzione dei programmi che compongono la suite.
Dopo ogni utilizzo di TrackWinstall apparirà il seguente messaggio:
È sufficiente ignorarlo cliccando sul pulsante Annulla.
Rendere portabile un software qualsiasi con Cameyo
Cameyo è un programma completamente gratuito che è stato studiato per rendere portable qualsiasi software per Windows. Le versioni portabili delle applicazioni che vengono prodotte da Cameyo possono essere “virtualizzate” su qualunque sistema. Ciò significa che non soltanto, come evidenziato nell’introduzione, Cameyo è in grado di stabilire cartelle, file e voci di registro necessari per il funzionamento del programma ma il file generato è in grado di annullare tutte le modifiche applicate alla configurazione di Windows (file e cartelle, registro di sistema e così via) da parte del programma che è stato reso portabile.
Cameyo provvede a registrare tutte le modifiche operate dalla procedura d’installazione di un programma e genera un file eseguibile (con estensione .cameyo.exe
all’interno del quale viene inserito tutto l’occorrente per il corretto funzionamento del programma installato da parte dell’utente.
Si supponga che la procedura d’installazione di un ipotetico software carichi alcuni file, necessari per il suo corretto funzionamento, in alcune cartelle di sistema, quindi operi una serie di interventi sulla configurazione del registro di Windows: Cameyo provvederà a tenere traccia di tutte le modifiche annotandole nel suo registro. Al termine dell’operazione, il software produrrà un eseguibile che conterrà le istruzioni per replicare – su qualunque altro sistema Windows – la situazione successiva all’installazione del programma. Salvo situazioni particolari ed escludendo software molto complessi, l’applicazione “virtualizzata” con Cameyo dovrebbe funzionare così come se fosse stata manualmente installata.
L’unico problema di Cameyo è che l’applicazione non virtualizza il programma installato sul personal computer utilizzando la procedura di setup canonica. In altre parole, Cameyo genera un eseguibile che permetterà poi di “virtualizzare” il programma prescelto su altri sistemi, ma non permette di annullare con clic l’installazione di un programma sul computer utilizzato per generare il file .cameyo.exe
.
Rendere portabile un programma e generare il suo eseguibile
Per avviare Cameyo è sufficiente fare doppio clic sul suo file eseguibile (il produttore tiene a precisare che alcuni motori di scansione antivirus, specie se attivato il motore di scansione euristica, potrebbero evidenziare dei “falsi positivi”, ossia segnalare il programma come potenzialmente pericoloso quanto, in realtà, non lo è affatto).
Il software non necessita d’installazione e, sin dal primo avvio, ci si troverà dinanzi alla finestra seguente:
Cameyo, rispetto alle precedenti versioni del programma, integra una ricca libreria contenente alcuni tra i software più utilizzati al mondo. Dalla libreria di Cameyo si possono scaricare applicazioni che sono già state rese portabili: per procedere è sufficiente portare il puntatore del mouse su un’icona e selezionare Download.
Alla comparsa dell’indicazione Ready, significa che il programma scelto è pronto per essere avviato in versione portable (nel nostro esempio abbiamo optato per Foxit Reader):
Per avviare l’applicazione resa portabile e virtualizzata, è sufficiente fare clic sulla sua icona oppure doppio clic sul file .cameyo.exe
contenuto nella cartella %userprofile%\Documents\Cameyo Apps
(è qui che Cameyo memorizza tutte le applicazioni).
Chiusa l’applicazione, penserà Cameyo ad eliminare tutti i file collegati al funzionamento del programma facendo pulizia sul sistema.
Per trasportare un’applicazione portabile su un altro sistema è quindi sufficiente copiare il file .cameyo.exe
salvato nella cartella %userprofile%\Documents\Cameyo Apps
.
Come fare per le appplicazioni che non sono presenti nella libreria di Cameyo?
Per rendere portabile un programma che non figura nella libreria di Cameyo, è sufficiente cliccare su Studio (l’ultima icona in basso a destra) quindi su Capture app locally.
Il programma provvederà così a “scattare un’istantanea” della configurazione attuale del sistema operativo (visualizzazione del messaggio “Taking initial system snapshot before installation“):
Cameyo prende nota dello stato di file, cartelle e voci del registro di Windows per poi effettuare una comparazione ad installazione dell’applicazione da virtualizzare ultimata.
Quest’operazione può richiedere diversi minuti per poter essere portata a compimento, in funzione della velocità della macchina utilizzata e del numero di file memorizzati sul disco fisso.
Al termine di questa fase, apparirà la seguente finestra:
Cameyo invita così all’installazione del programma che s’intende virtualizzare spiegando che nel caso in cui dovesse essere necessario operare un riavvio del sistema si potrà farlo normalmente. Ad installazione conclusa, suggeriamo di avviare almeno un paio di volte l’applicazione in modo che essa provveda a creare tutti i file necessari per il suo funzionamento e consigliamo di configurarla secondo le proprie esigenze.
Durante l’installazione dell’applicazione, è bene non effettuare altre modifiche sul sistema operativo né caricare programmi che non si desidera vengano inseriti nel file .cameyo.exe
di Cameyo.
Il nostro consiglio, dopo aver installato il software che si desidera rendere portabile, è quello di applicare eventuali patch o caricare tutti i plugin che si vogliono usare. Così facendo, Cameyo inserirà anche tali elementi accessori nel pacchetto virtualizzato in formato .cameyo.exe
.
Dopo aver fatto clic, quindi, sul pulsante Install done di Cameyo, il passo seguente consiste nel lasciare che il software provveda ad analizzare lo stato del sistema in modo da individuare tutte le differenze tra la configurazione attuale (post-installazione) e quella precedente. I dati così ricavati verranno poi impiegati da Cameyo per produrre l’eseguibile .cameyo.exe
.
Al termine di questa fase, verrà mostrato un messaggio col quale Cameyo conferma la creazione del file per la virtualizzazione del programma prescelto su altre macchine.
I pacchetti .cameyo.exe
generati con Cameyo vengono automaticamente salvati nella cartella %userprofile%\Documents\Cameyo Apps
.
Facendo clic sul pulsante Edit package è possibile applicare, qualora lo si dovesse ritenere opportuno, alcune modifiche al file .cameyo.exe
prodotto da Cameyo:
Come si vede è possibile definire il livello di isolamento per l’applicazione: per impostazione predefinita, essa non potrà applicare modifiche sul sistema ove verrà eseguita (isolated).
Le opzioni successive consentono di definire in quale locazione di memoria dovranno essere salvati i dati prodotti dall’applicazione (“data storage“): il disco fisso o l’unità USB dal quale il programma è avviato, la directory contenente l’eseguibile della stessa od una cartella specifica.
Si possono poi cambiare icona, nome e descrizione del programma.
Le schede Files e Registry consentono di esaminare le modifiche applicate dall’installazione del programma sul sistema in uso (in termini di file aggiunti, modificati od eliminati e di interventi sul registro di Windows).
Attraverso la scheda Advanced, gli utenti più smaliziati possono configurare (facendo eventualmente riferimento al link Custom events) azioni da compiere all’avvio od all’uscita del programma, in modalità virtualizzata (le modifiche non saranno definitive) e non.
Una volta applicate le variazioni, si dovrà selezionare il menù File quindi il comando Save:
Il pacchetto .cameyo.exe
è così pronto per essere utilizzato su un’altra macchina.
Spostando il file contenente l’applicazione da virtualizzare (.cameyo.exe
) su un’altra macchina quindi provando ad avviarlo, si otterrà il messaggio seguente (“preloading package“):
Ciò significa che Cameyo sta estraendo i file necessari sul sistema: ecco perché il primo avvio dell’applicazione virtualizzata richiede sempre più tempo dei successivi.
Chiudendo l’applicazione, è possibile notare come questa non abbia applicato variazioni al sistema ma, indagando in modo un poco più approfondito, è facile rilevare la presenza della cartella %appdata%\VOS
contenente tutta una serie di informazioni circa il programma virtualizzato.
Per eliminare tutte le tracce del software virtualizzato, si deve aprire il prompt dei comandi e digitare il nome del file .cameyo.exe
seguito dall’opzione -Remove
:
Se il nome del file .cameyo.exe
contenesse degli spazi (esempio: Foxit Reader.cameyo.exe
), si dovranno usare le doppie virgolette (esempio: "Foxit Reader.cameyo.exe" -Remove
).
Pur non necessitando di installazione, Cameyo lascia qualche traccia di sé sul sistema in uso, anche dopo la sua chiusura. Ad esempio, anche dopo aver terminato la sessione di lavoro con Cameyo, sul sistema continua a restare memorizzata la cartella %appdata%\Roaming\VOS
mentre nel registro di sistema permangono le chiavi HKEY_CURRENT_USER\Software\Cameyo
e HKEY_CURRENT_USER\Software\VOS
.
Per eliminare queste tracce, è possibile eseguire Cameyo con lo switch -Remove
(esempio: Cameyo-2.0.832 -Remove
).
La cartella %appdata%\Roaming\VOS
sarà così eliminata. Nel registro continueranno tuttavia a comparire le chiavi HKEY_CURRENT_USER\Software\Cameyo
e HKEY_CURRENT_USER\Software\Cameyo Package Editor
mentre nel file system resterà presente la cartella %userprofile%\AppData\Local\Cameyo
.
Tutti questi elementi possono essere eventualmente rimossi in modo manuale.