Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Mehrere Dateien gleichzeitig updaten (https://www.delphipraxis.net/66076-mehrere-dateien-gleichzeitig-updaten.html)

SittingDuck 24. Mär 2006 11:03


Mehrere Dateien gleichzeitig updaten
 
Moin Moin ...

Wer den Launcher kennt, der weiss, das er eine eingebaute Update-Funktion besitzt.
Diese Routine ersetzt bei laufender Internet-Verbindung die Launcher.exe. Da er
ständig weiter entwickelt wird, schwebt mir vor, nicht nur diese exe-Datei sondern
auch die geänderten Sprach-Dateien und die dazugehörigen Hilfetexte mit in
diese Update-Routine zu integrieren.
Nun möchte ich ungern etwa 10 Dateien einzeln herunterladen sondern lieber eine
gepackte Datei, die Alles beinhaltet. Diese sollte, nachdem man sie startet, ihren
Inhalt in die entsprechenden Unterordner verteilen und fertig wäre das komplette
Update.
Bin ich nun gezwungen das Alles zu Fuß zu machen, oder kennt jemand ein
entsprechendes 'Hilfsprogramm' genau für diesen Zweck ? Oder ist der gesamte
Denkansatz etwa falsch ? Wie würdet Ihr das machen ?

Etwas ratlos, grüßt ...

Klaus01 24. Mär 2006 11:51

Re: Mehrere Dateien gleichzeitig updaten
 
wie wäre es denn wenn Du das alles mit InnoSetup
zusammenpackst, dann überträgst und anschließend
auspackst.

Grüße
Klaus

C.Schoch 24. Mär 2006 18:08

Re: Mehrere Dateien gleichzeitig updaten
 
Ha, da hat einer meinen Vorschlag angenommen.:hello: :party:

Man könnte das ganze auch in ein selbst entpackendes Archiv packen und dann wie bisher auch mit einem Batch entpacken oder
gleich die SFX Datei (eine .exe) starten.
Bei WinRar kann man sogar das ganze im silent mode machen und weitere für diesen Zweck nützliche Einstellungen vornehmen.

Das Problem sowohl beim Installer als auch beim SFX ist, dass Dateien sowohl im Temp als auch im Launcher Ordner zurückbleiben.

Jelly 24. Mär 2006 21:30

Re: Mehrere Dateien gleichzeitig updaten
 
Zitat:

Zitat von C.Schoch
Das Problem sowohl beim Installer als auch beim SFX ist, dass Dateien sowohl im Temp als auch im Launcher Ordner zurückbleiben.

Das seh ich als eher gering an... Schlimmer find ich dass man so gezwungen ist unter Umständen zisch Megabytes runterzuladen, nur weil sich an einer DLL was geändert. Schöner wäre vor dem Update zu prüfen, welche Dateien neu sind, und gegebenfalls nur diese runterzuladen... Aber meine TInternetupdate Komponente auf meiner Webseite hab ich allerdings auch noch nicht soweit weiterentwickelt.

C.Schoch 24. Mär 2006 22:15

Re: Mehrere Dateien gleichzeitig updaten
 
Das wird aber richtig kompliziert, da er ja nur ein File downloaden möchte. Man müsste zuerst die aktuelle Version prüfen und danach das Package zusammenstellen oder aus bereits fertigen Packages auswählen.
Das ähnelt ja fast schon einem Live Update.
Aber da der Launcher in einem SFX nur 300kb groß ist und den Großteil sowieso die "exe" ausmacht ist das eher unerheblich.

Jelly 24. Mär 2006 22:45

Re: Mehrere Dateien gleichzeitig updaten
 
Das schein ich irgendwie so halb überlesen zu haben... Aber was spricht denn gegen mehrere Downloads, im Prinzip...

MathiasSimmack 25. Mär 2006 08:15

Re: Mehrere Dateien gleichzeitig updaten
 
Man könnte diesem Updateprogramm auch eine Prüfsummenroutine spendieren, mit der er die Prüfsumme einer angegebenen Datei ermittelt. Dann greift er auf eine Liste auf dem Internetserver zu, sucht den Dateinamen und vergleicht die Prüfsumme mit der dort hinterlegten. Unterscheidet sie sich -> Download, ansonsten -> nächste Datei.

Und sonst gibt es auch noch Tools wie MakeUpd, mit denen man kleine Patches entwickeln kann, da sie nur die Dinge enthalten, die ausgetauscht werden müssen. Der Entwickler (unser SittingDuck, in dem Fall) benötigt nur zwei Verzeichnisse mit der Originalversion und der aktualisierten Version. Den Rest macht das Tool. Ergebnis ist ein Patch (abhängig von den Änderungen oft nur ein paar KB groß), mit dem man aus der Originalversion die gepatchte Version machen kann.

himitsu 25. Mär 2006 08:36

Re: Mehrere Dateien gleichzeitig updaten
 
Außerdem ist es bei vielen Programmen möglich die SFX-Programme nach dem Entpacken noch einige Befehle ausführen zu lassen ... also ein "lösche dich selbst"-Befehl wäre möglich (z.B. mit 'ner Batch-Datei, welche es mit entpackt und am Ende einfach aufruft)

Jelly 25. Mär 2006 09:53

Re: Mehrere Dateien gleichzeitig updaten
 
Zitat:

Zitat von MathiasSimmack
Und sonst gibt es auch noch Tools wie MakeUpd, mit denen man kleine Patches entwickeln kann, da sie nur die Dinge enthalten, die ausgetauscht werden müssen. Der Entwickler (unser SittingDuck, in dem Fall) benötigt nur zwei Verzeichnisse mit der Originalversion und der aktualisierten Version. Den Rest macht das Tool. Ergebnis ist ein Patch (abhängig von den Änderungen oft nur ein paar KB groß), mit dem man aus der Originalversion die gepatchte Version machen kann.

Dieses MakeUpd Tool ist ne feine Sache, und ne kostengünstige Alternative zu Patchfactory. Damit kann man aber leider nur updaten von einer Version A auf eine Version B. Bringt man jedoch irgendwann weitere Updates heraus (Version C und D), so wird die Sache komplizierter, denn Du musst unterschiedlichste Updates erstellen (von A->B, A->C, B->C, A->D, B->D, C->D), oder du erstellst immer nur die Patches von einer Version zu nächsten, was dann aber wieder mit sich bringt, dass mehrere Updates nötig sind, um von A->D upzugraden, was das Downloadvolumen dadurch auch wieder grösser machen lässt... Aber ich denke letzterer Weg ist wohl der bessere, wenn man davon ausgeht, dass die User regelmässig die Updates aufspielen, und es somit eher selten zu einem Quantensprung von A->D kommt..

SittingDuck 25. Mär 2006 11:30

Re: Mehrere Dateien gleichzeitig updaten
 
Moin Moin ...

Erst einmal Danke an Alle für Eure Vorschläge.

@Klaus01: Inno-Setup ist recht kompliziert. Schon für die Setup.exe
die ich parallel mit anbiete, musste ich tief in die Materie eintauchen.
Der Vorschlag ist vielversprechend, aber erlich gesagt, schrecke ich etwas
vor der Arbeit zurück ...

@Jelly: Das fertige Archiv ist tatsächlich nur 300KB groß, sodaß die
Idee mit dem Patchen zwar gut ist, aber vielleich doch in meinem Fall
etwas übers Ziel hinaus schießt.

@C.Schoch: Na klar ... über kurz oder lang versuche ich alle Eure
Vorschläge umzusetzten. Es ist nur eine Frage des richtigen Zeitpunktes.
Dein Vorschlag mit einem Rar-Archiv das sich selber entpackt ist aus
meiner Sicht der eleganteste Weg ...
Danke für den Vorschlag und gleichzeitig die Lösung. :thumb:

Wieder ein Schritt weiter, grüßt ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz