2009-11-25 13 views
8

Fornire applicazioni di utilità con funzionalità di "aggiornamento automatico" sembra una buona educazione di base in questi giorni.Esiste un framework per consentire l'aggiornamento automatico delle app pubblicate su Codeplex direttamente da Codeplex?

Sto pensando ad app come Reflector o Paint.NET, che in modo proattivo ti dicono "hey, c'è una versione più recente disponibile. Vuoi scaricarlo?"

Q: Qualcuno sa di un quadro comune che può essere utilizzato dalle applicazioni che provengono da progetti CodePlex, per avvisare l'utente se v'è una nuova versione, ed eventualmente scaricare e installare che il rilascio più recente direttamente da CodePlex?

Ovviamente c'è ClickOnce, e il Updater Block, e ho scritto classi di utilità per fare questo me stesso, per WinForms e WPF, e le altre persone hanno scritto similar things, ma tutti questi richiedono l'editore app di pubblicare l'applicazione al di fuori di Codeplex , affinché l'aggiornamento automatico funzioni. Quello che sto immaginando è qualcosa che viene scaricato direttamente da codeplex.


EDIT
posso immaginare un tale quadro potrebbe imporre una struttura su come l'applicazione viene pubblicato CodePlex. Potrebbe essere necessario pubblicare un "manifest.xml" con ogni versione e all'interno di tale file manifest potrebbero essere una versione dell'app, un timestamp, delle note sul rilascio, un URL per il download binario più recente e così via.

Sembra che qualcuno lo abbia già costruito.

risposta

1

Per quanto ne so (basata sulla mia esperienza di cercare di fare Componento il download di file da CodePlex), è notoriamente difficile per prelevare solo un singolo file a livello di codice, dal momento che la costruzione di un collegamento simile a http://mef.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34838#DownloadId=88937 non è un'esperienza molto piacevole.

Detto questo, è ancora possibile avere un singolo file 'updates.xml` in una posizione ben nota e controllare gli aggiornamenti che lo utilizzano.

+1

Stavo pensando che un framework comune analizzerebbe il feed RSS per le versioni, quindi cerca un nome noto (come "manifest.xml") su ogni release. . . – Cheeso

Problemi correlati