Einzelnen Beitrag anzeigen

Strahlex

Registriert seit: 30. Jun 2007
87 Beiträge
 
Delphi 2005 Personal
 

UU - Universal Updater v0.3

  Alt 31. Jan 2008, 20:15
Universal Updater v0.3
http://gostrahlex.go.funpic.de/image...te/UU-Logo.PNG

Da ich es umständlich fand, vor allem für kleinere Programme, immer einen neuen Update-Client zu programmieren hab ich mal den Universal Updater geproggt:

Features:
  • universell anpassbarer Client
  • Download komprimierter Updatepakete mittels 7Zip
  • UpdateManager für das einfache und schnelle veröffentlichen von Updates
Voraussetzungen:
  • Webserver mit HTTP und FTP Unterstützung
  • 7Zip zum komprimieren der Updates
  • TSevenZipVCL und die Indys fürs selber kompilieren
Screenshots:
http://img3.imagebanana.com/img/h7dz...0815_58_57.png
http://img3.imagebanana.com/img/d66c...0816_09_30.png

Download:
goStrahlex.funpic.de


Was folgen wird:
  • bessere Performance des Updaters



Anleitung:

Grundvoraussetzungen:
  • Webserver mit HTTP und FTP Zugriff
  • 7Zip zum packen der Dateien
ServerStruktur:
Auf dem Update-Server sollte ein eigenes Verzeichnis für das Programm vorhanden sein, in diesem wird mittels Update-Manager die Versionsdatei erstellt. Dieses Verzeichnis sollte außerdem einen Ordner mit dem Namen "files" enthalten, hierhin werden vom Update-Manager die Update-Packete im Sevenzip-Format kopiert.


Updater konfigurieren:
Im Verzeichnis des Updaters liegt eine update.cfg und eine uninstall.cfg, diese beiden Dateien müssen auf das Programm angepasst werden.

update.cfg - Aufbau:
1. Zeile: Warnung für die User
2. Zeile: Der Update-Server
3. Zeile: Verzeichnis am Update-Server
4. Zeile: Name der zu updatenden Anwendung

uninstall.cfg - Aufbau:
1. Zeile: Warnung für die User
ab der 2. Zeile sollten die Namen der vor dem Update zu löschenden Dateien eingetragen werden


Update-Manager:
zuerst muss das Update mit 7Zip in eine 7z-Datei gepackt, dazu am besten alle veränderten Dateien seit dem Release und die uninstall.cfg einpacken.

Der Update-Manager sollte sich in Prinzip selbst erklären...

Man kann vielleicht noch einen UnInstaller oder so dazugeben der sich auf die uninstall.cfg bezieht.

Integration in ein Projekt:
Um den Updater in ein Projekt einzubinden sollte man ihn am besten beim starten des Programms mitstarten, wenn kein Update verfügbar ist bleibt dieser leise und unsichtbar, ist jedoch ein Update verfügbar wird die Update-Meldung erscheinen. Das Programm sollte automatisch beim Update terminiert werden.

Wenn der Updater nicht "geheim" bleiben soll gibt es den Paramter "-explizit", diese eignet sich zum Beispiel für einen Update-Button im Projekt.

neu:
Backup-Funktion mit dem Paramter "-backup"

Anregungen, Beschwerden und Modifikationen sind erwünscht!!!
Angehängte Dateien
Dateityp: zip universal_updater_135.zip (516,7 KB, 204x aufgerufen)
  Mit Zitat antworten Zitat