Applicativo multilingua per la gestione degli aggiornamenti automatici di qualsiasi software, semplice, veloce, funzionale, gratuito !
E’ un prodotto FREE !!!
Si tratta di un software per il download di aggiornamenti da una sorgente verso il proprio computer, liberamente configurabile, automatico, gratuito, leggero.
SRUpdater può essere utilizzato per scaricare gli aggiornamenti di un applicativo usato su una rete composta da diverse postazioni ed evita di dover eseguire tale aggiornamento manualmente su tutti i computer, risultando cosi uno strumento particolarmente utile per gli sviluppatori di software.
SRUpdater si interpone all’avvio di un applicativo principale scelto dall’utente e garantisce che ne venga verificata la presenza aggiornamenti da un server remoto opportunamente configurato; se vi sono aggiornamenti essi vengono scaricati e installati prima avviare definitivamente l’applicativo principale desiderato.
SRupdate garantisce l’uso di applicativi costantemente aggiornati perchè la verifica avviene ad ogni utilizzo del software principale cui è stato collegato.
SRUpdater funziona secondo un principio molto semplice.
Si interpone tra il lancio del software di nostro interesse e lo mette in standby; verifica se esistono degli aggiornamenti da scaricare dalla sorgente specificata in fase di configurazione ed in caso di risposta positiva ne scarica tutto il contenuto nella cartella del nostro software; una volta terminato l’aggiornamento esegue il software principale. Qualora durante la verifica degli aggiornamenti l’ultima versione del software risulta già installata sul proprio computer, chiude il processo di aggiornamento e lancia subito l’eseguibile principale del software primario.
Steps logici:
- Lancio software di riferimento.
- Avvio di SRUpdater e verifica aggiornamenti tramite confronto tra numero di versione in uso e quello presente sul server.
- Download aggiornamenti (se presenti) e copia sulla cartella del software di riferimento.
- Aggiornamento del sistema all’ultima versione scaricata.
- Chiusura di SRUpdater e lancio del software principale.
La configurazione di SRUpdater consiste in pochi semplici passaggi:
- Download e copia dei files necessari sul PC dell’utente.
Il pacchetto scaricabile di SRUpdater contiene 4 files e 5 directory:
- SRUpdater.exe , l’eseguibile principale
- SRUpdaterCypher.exe , l’eseguibile per cifrare i dati sensibili di accesso
- SRUpdaterData.xml, file di configurazione
- SRlocalVersion.txt, file di testo contenente il numero di versione in uso del software che vogliamo gestire. Il numero deve essere ti tipo intero, quindi senza punti e senza virgole.
- 5 Directory (it,en,fr,es,de) contenenti i files di risorse per la traduzione multilingua.
Tutti e 4 questi files devono essere estratti dall’archivio scaricabile e copiati nella cartella dove si trova il file eseguibile principale dell’applicativo che vogliamo gestire con SRUpdater.
- Inserimento dati necessari sul file SRUpdaterData.xml
Il file SRUpdaterData.xml è editabile con qualsiasi videoscrittore (notepad, wordpaf, altri) e contiene dati di accesso alla cartella remota, impostazioni di vario tipo, percorsi utili a indicare dove gli aggiornamenti andranno copiati, nome dell’eseguible principale e molto altro. Nella parte alta del file c’è una sezione commentata con le spiegazioni (in inglese) dei dati richiesti.
Di seguito riportiamo un esempio di dati di configurazione per scaricare aggiornamenti da un server FTP (quindi dalla rete internet).
<Data>
<Updates>
<Language>en</Language>
<PathUpdateVersion>ftp://www.nomesito.it/cartellasito/SRupdater/SRUpdaterVersion.txt</PathUpdateVersion>
<CredentialUpdatePath>ftp://www.nomesito.it</CredentialUpdatePath>
<CredentialUpdateUser>ap3+fqoHmqllqlukQ==</CredentialUpdateUser>
<CredentialUpdatePwd>e+j5gWR3avJEfg==</CredentialUpdatePwd>
<PathLocalVersion>SRlocalVersion.txt</PathLocalVersion>
<ProcessToKill>PIPPO</ProcessToKill>
<PathFilesToDownload>ftp://www.nomesito.it/nomecartella/SRUpdater/files</PathFilesToDownload>
<UpdateType>1</UpdateType>
<WaitTimeForSingleDownload>100</WaitTimeForSingleDownload>
<IntranetServerUnit>w</IntranetServerUnit>
<CloseAllMappedConnection>false</CloseAllMappedConnection>
<UseFTPsslConnection>false</UseFTPsslConnection>
</Updates>
</Data>
Spiegazione dei dati richiesti:
Language: lingua di esecuzione dell’applicativo: possibili valori “it” per Italiano, “en” per inglese, “fr” per francese, “es” per spagnolo, “de” per tedesco.
PathUpdateVersion: percorso remoto (FTP o intranet) dove trovare il file ( qui chiamato SRUpdaterVersion.txt) con scritto il numero di versione (in formato numerico intero e senza punti) aggiornata presente sul server
CredentialUpdatePath: se è richiesta una autorizzazione per l’accesso al server, indicare la cartella (o il sito FTP) verso il quale fare richiesta di accesso.
CredentialUpdateUser e CredentialUpdatePwd: nome dell’utente e relativa password per l’accesso al server (se richiesti). I dati sono cifrati con algoritmo di cifratura a 256 bit attraverso l’uso dell’eseguibile presente nel pacchetto SRUpdaterCypher.exe, relativamente al cui utilizzo si rimanda al sottostante paragrafo di spiegazioni.
PathLocalVersion: percorso del file SRlocalVersion.txt compreso nel pacchetto rispetto al file SRUpdater.exe
ProcessToKill: nome del file eseguibile dell’applicazione che vogliamo gestire con SRUpdater ma scritto senza punti e senza estensione cosi come appare nei processi di sistema Windows; qui è indicato come PIPPO per pure esempio ma potremo ad esempio scrivere MiaApplicazione, il che vorrebbe dire puntare all’eseguibile MiaApplicazione.exe .
PathFilesToDownload: percorso della cartella che conterrà i files da scaricare come aggiornamento; si consideri che ogni files e cartella all’interno di questo percorso sarà scaricato come aggiornamento e riportato con la stessa identica struttura ad albero prelevata dal server (quindi l’ordine di directory e sottodirectory sarà mantenuto e rispettato fedelmente). Nell’esempio ho creato una cartella SRUpdater sul server FTP e al suo interno ho aggiunto una sottocartella files… tutto cio’ che si trova all’interno della cartella files sarà trattato come aggiornamento.
UpdateType: dato numerico che può assumere i valori di 0 se stiamo gestendo una connessione intranet, 1 se stiamo gestendo una connessione internet di tipo FTP.
WaitTimeForSingleDownload: valore numerico espresso in millisecondi che esprime il tempo di attesa che intercorre tra il comando di download di un file e quello successivo. Necessario per non creare saturazione durante il download. Il suo valore di default è pari a 100, ovvero un decimo di secondo. Più si innalza il valore e più il processo di download diventa lungo ma probabilmente più accurato.
IntranetServerUnit: lettera di unità da assegnare al ponte di collegamento per le reti intranet. Serve ad evitare di utilizzare unità di rete già assegnate per altre necessità interne alla rete aziendale.
CloseAllMappedConnection: serve per forzare la chiusura di tutte le unità di rete mappate sul pc di esecuzione ed è utile in presenza di mappature che portano a generare errori di SRUpdater. Accetta valori booleani ovvero TRUE per VERO/SI e FALSE per FALSO/NO.
UseFTPsslConnection: Chiede di utilizzare un protocollo sicuro SSL qualora il server FTP lo consenta. Accetta valori booleani ovvero TRUE per VERO/SI e FALSE per FALSO/NO.
Ecco anche un esempio di file di configurazione per una intranet aziendale correttamente funzionante ma attenzione ! L’esempio funziona solo se il protocollo di condivisione della rete supporta Samba versione 1, quindi potreste avere dei problemi con Windows 10, dove tale protocollo è disattivato di default per motivi di sicurezza. In questo caso avete due alternative, ovvero o reinstallare il servizio di samba versione 1 (trovi in rete come fare ci vogliono 2 minuti) o utilizzi il metodo tramite server FTP.
La soluzione migliore rimane invece, oltre a quella di utilizzare un server FTP, quella di utilizzare un server che disponga della stessa versione di Samba in uso sui pc che richiedono l’aggiornamento; se le due versioni sono compatibili e “parlando la stessa lingua” non ci saranno problemi.
<Data>
<Updates>
<Language>en</Language>
<PathUpdateVersion>\\serveraziendale\cartella\SRupdate\SRUpdateVersion.txt</PathUpdateVersion>
<CredentialUpdatePath>\\serveraziendale\cartella</CredentialUpdatePath>
<CredentialUpdateUser>RHy2BAkrX+EyjlIaOw==</CredentialUpdateUser>
<CredentialUpdatePwd>yA2PUJoSUmjhj9D0Q==</CredentialUpdatePwd>
<PathLocalVersion>SRlocalVersion.txt</PathLocalVersion>
<ProcessToKill>PIPPO</ProcessToKill>
<PathFilesToDownload>\\serveraziendale\cartella\SRupdate\files</PathFilesToDownload>
<UpdateType>0</UpdateType>
<WaitTimeForSingleDownload>100</WaitTimeForSingleDownload>
<IntranetServerUnit>w</IntranetServerUnit>
<CloseAllMappedConnection>false</CloseAllMappedConnection>
<UseFTPsslConnection>false</UseFTPsslConnection>
</Updates>
</Data>