PDA

View Full Version : Realizzare un aggiornamento software


Menion83
21-06-2009, 15:39
Ciao Ragazzi,
come da titolo chiedo aiuto per la realizzazione di un programma di aggiornamento software. Mi spiego meglio. In una macchina c'è installato un software fatto in C# e Asp.Net. Il programma è connesso ad un database PostgreSQL e prevede aggiornamenti frequenti distanti poco tempo l'uno dall'altro. Il problema non si pone se l'aggiornamento viene effettuato per una sola macchina ma se invece di una ce ne fossero mille, sarebbe impensabile farlo a mano...
Esiste un modo per realizzare un programma che capisca (magari in base alla versione dell'eseguibile) quando aggiornare il software?
Avevo pensato ad una cosa simile.
La macchina si collega ad un sito internete dando il proprio MAC Address in modo tale che venga riconosciuta dal sistema. Ovviamente i vari MAC Address sono inseriti in un DB che ne fa il controllo. Una volta riconosciuta viene passata la versione degli eseguibili e se sono inferiori a quella nuova, viene effettuato l'aggiornamento.
Qualcuno ha idee migliori, l'ha fatto, sa come farlo ecc...?
Ciao!

=KaTaKliSm4=
21-06-2009, 16:27
Ciao Ragazzi,
come da titolo chiedo aiuto per la realizzazione di un programma di aggiornamento software. Mi spiego meglio. In una macchina c'è installato un software fatto in C# e Asp.Net. Il programma è connesso ad un database PostgreSQL e prevede aggiornamenti frequenti distanti poco tempo l'uno dall'altro. Il problema non si pone se l'aggiornamento viene effettuato per una sola macchina ma se invece di una ce ne fossero mille, sarebbe impensabile farlo a mano...
Esiste un modo per realizzare un programma che capisca (magari in base alla versione dell'eseguibile) quando aggiornare il software?
Avevo pensato ad una cosa simile.
La macchina si collega ad un sito internete dando il proprio MAC Address in modo tale che venga riconosciuta dal sistema. Ovviamente i vari MAC Address sono inseriti in un DB che ne fa il controllo. Una volta riconosciuta viene passata la versione degli eseguibili e se sono inferiori a quella nuova, viene effettuato l'aggiornamento.
Qualcuno ha idee migliori, l'ha fatto, sa come farlo ecc...?
Ciao!


Se il programma è free....che bisogno ce di comparare i mac adress o meglio l'eventuale seriale del software?Comunque sei sulla retta via...basta paragonare la versione del software in uso con l'aggiornamento rpesente nel database....ovviamente hai bisogno di un server sempre acceso con accesso al database degli update e con su tutti gli aggironamenti da far scaricare alle varie macchine....comunque è tutto fattibilissimo....;)

CwNd
21-06-2009, 21:34
Ciao,
Io mi sono fatto una cosa del genere:
Sul server tengo un file xml che contiene un numero di versione e i file da scaricare e sostituire. Lato client invece c'è un altro file xml che ha solo il numero di versione. Quando il programma parte scarica l'xml dal server e compara la versione con la propria, se è più recente scarica i file da aggiornare.
Ho dovuto attuare una soluzione del genere perchè il server era necessariamente linux percui non avrei potuto lavorare con le classi native di .net che ti permettono di interagire con le versioni degli assembly, se hai un server windows e puoi sviluppare una piccola applicazione lato server, puoi fare in modo che il file xml contenga per ogni file la versione dell'assembly corrente, e lato client il programma confronti gli assembly locali con quelli remoti. Per quanto riguarda l'autenticazione direi che la soluzione che proponi potrebbe funzionare :)

Menion83
22-06-2009, 09:26
Se il programma è free....che bisogno ce di comparare i mac adress o meglio l'eventuale seriale del software?Comunque sei sulla retta via...basta paragonare la versione del software in uso con l'aggiornamento rpesente nel database....ovviamente hai bisogno di un server sempre acceso con accesso al database degli update e con su tutti gli aggironamenti da far scaricare alle varie macchine....comunque è tutto fattibilissimo....;)

Il programma non è free in effetti. Il fatto del file xml mi attira ma sinceramente non so da dove iniziare. Il server sempre accesso c'è e non è un problema metterci gli aggiornamenti.
Grazie per la risposta!

=KaTaKliSm4=
22-06-2009, 13:13
Il programma non è free in effetti. Il fatto del file xml mi attira ma sinceramente non so da dove iniziare. Il server sempre accesso c'è e non è un problema metterci gli aggiornamenti.
Grazie per la risposta!

Beh allora potresti confrontare i seriali dei programmi che richiedono l'aggiornamento....

Comunque sia a questo punto va bene qualsiasi tipo di file che contiene la versione del programma!Ma un xml è piu professionale e comodo da gestire ;)

Anche un .ini .... ma è passato di moda :D