Hallo Marco,
ich habe mir deine Kompoponente zwar nicht angeschaut habe aber paralellen zu meinem " alten Updater" gefunden. Also habe ich ihn rausgekramt und weiter verbessert.
Folgendes Ergebnis ist dabei rausgekommen.
Ich habe zwar auch mit einer ini. ähnlichen Datei gearbeitet diese ist aber nicht mehr wirklich notwendig.
Folgenden Ansatz habe ich bereits umgesetzt:
- Container geschrieben der die "neuen Dateien aufnimmt und in eine Datei packt, Inhalt wird per MD5 verifiziert"
- Upgrader alias (Update.exe) geschrieben. Dieser packt die Containerdatei aus und verteilt diese an die Anwendung.
Funktion:
- Der Download des Updates ( der Containerdatei ) erfolgt über das Hauptprogramm.
- Update wird heruntergeladen, dieses beinhaltet eine Containerdatei.
- Das Hauptprogramm startet den Upgrader alias Update.exe und beendet sich selbst.
- Upgrader alias Update.exe verteilt, löscht bzw überschreibt die alten Dateien oder aktualisiert sich selbst.
Vorteile:
- Den Upgrader kann man individuell ans Programmdesign anpassen da der Code immer gleich bleibt.
- Der Upgrader alias (Update.exe) kann sich selbst updaten.
- Updatekomponente wird wie gehabt ins normale Projekt aufgenommen.
- Man hat nur noch eine Containerdatei auf dem Webspace.
- Die Version des aktuellen Programms wird mittels einer version.dat vom Upgrader verteilt. Und vom Hauptprogramm abgefragt. Somit erübrigt sich die ini-änliche datei auf dem Space.
- Man benötigt nur für den Upgrader Adminrechte nicht fürs Hauptprogramm
Das Modul läuft übrigens schon in eines meiner aktuellen Projekte
Würde mein Wissen und Lösungsansatz gern mit dir Teilen.
Wenn du Interesse hast kannst du dich ja mal per Pm melden.
Mfg Net7