|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
[Java] Come aggiornare il software in remoto...
Salve raga
ho creato un piccolo software gestionale che si connette ad un database in remoto... Il software viene utilizzato in 3 postazioni diverse e c'è il problema che ogni correzioni effettuata, devo aggiornare manualmente poi tali postazioni... Ci sarebbe un modo per far si che ognuna di esse possa autonomamente aggiornare il software in uso?
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Mar 2013
Città: Frascati
Messaggi: 31
|
Ciao.
Potresti implementare un servizio (programma) in esecuzione in background che scarica con cadenza un file da un server contenente la versione (esempio version.txt contenente la stringa 1.0) e fa il confronto con la versione attuale del software. In caso fosse diversa, scarica il pacchetto, avverte l'utente dell'aggiornamento, chiude il programma e sostituisce i file. Altrimenti potresti fare, invece di un programma esterno, un thread che va in esecuzione con il gestionale, che esegue gli stessi controlli
__________________
Cpu: Amd FX 8350 - MOBO: Asrock 970 extreme3 (1.70) - Ram: Corsair DDR3 1600 4gb - Vga: Amd HD4890 1gb Ultima Versione - HDD: Western Digital Caviar Blue 1TB Sata3 + Seagate 360GB Sata2 - S.O: Windows 8 PRO 64bit |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
credo che debba fare comunque qualcosa di esterno, perchè altrimenti la cancellazione del jar o dei file in uso viene bloccata e potrebbe trovarsi con versioni diverse
__________________
My gaming placement |
![]() |
![]() |
![]() |
#4 | |
Member
Iscritto dal: Mar 2013
Città: Frascati
Messaggi: 31
|
Io di solito creo un eseguibile a parte, cioè il programma fa tutte le verifiche, scarica tutto e controlla l'integrità, poi lancia l'eseguibile, ad esempio ( updater.exe o .jar), e si "uccide da solo" ( nel senso che a volte non basta dargli il comando di chiusura, ma bisogna uccidere il processo in esecuzione), questo updater provvederà a estrarre il pacchetto dell'aggiornamento, leggere un file ini o xml (presente nell'archivio) per individuare tutti i percorsi in cui si andrà ad installare l'aggiornamento (magari vi sono più file del programma, quindi invece di riscaricare l'intero software, aggiorna solo quello che va aggiornato ), una volta concluso l'aggiornamento, riavvia il software.
A volte, quasi mai, l'antivirus o il sistema, bloccano la sostituzione dei file (almeno che non siano ancora in esecuzione o utilizzati da qualche processo -> Windows insegna ![]() Come sempre ho provveduto a dare una risposta chilometrica ![]() Schematizzando: Quote:
__________________
Cpu: Amd FX 8350 - MOBO: Asrock 970 extreme3 (1.70) - Ram: Corsair DDR3 1600 4gb - Vga: Amd HD4890 1gb Ultima Versione - HDD: Western Digital Caviar Blue 1TB Sata3 + Seagate 360GB Sata2 - S.O: Windows 8 PRO 64bit |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:47.