Laden...

Updatestrategien

Erstellt von eigeneachse vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.610 Views
E
eigeneachse Themenstarter:in
40 Beiträge seit 2007
vor 17 Jahren
Updatestrategien

Hallo zusammen,
ich wollte mal bei Euch anklopfen und fragen, wie Ihr vorgeht, wenn Ihr eure Programme aktualisieren wollt. Welche Mechanismen habt Ihr eingesetzt?
Ich habe schon CSAutoUpdater durch, leider ohne erfolg.
Mit dem VanillaUpdater habe ich es auch schon probiert, wieder ohne erfolg.

Was gibt es noch für möglichkeiten?

Danke im voraus für Eure Hinweise.

Gruß
eigeneachse

F
10.010 Beiträge seit 2004
vor 17 Jahren

Ohne erfolg ist immer eine präzieses Aussage.

Q
214 Beiträge seit 2006
vor 17 Jahren

Hallo,
am besten lagerst du den Update in eine eigene Anwendung aus.

Dann muss der Updater die Version der Programme & Resourcen (eigene und gff. externe dlls) übertragen. Der Server vergleicht diese und wenn eine Version veraltet ist, wird als Antwort die Adresse zu der neuen Datei geschickt. Der Updater lädt die neuen Dateien runter und ersetzt die alten. Danach kann das Hauptprogramm wieder gestartet werden.

Kurz:


Updater == Programm/Libs Version ==> Server
Updater <== Adressen zu neueren Dateien == Server
Updater <== Herunterladen der neuen Dateien == Server

B
1.529 Beiträge seit 2006
vor 17 Jahren

Aus Datenschutzgründen und um den Server zu schönen, würde ich es anders herum machen.
Der Server stellt einfach eine statische Datei zur Verfügung (hier bietet sich XML geradezu an), welche eine einfache Liste mit Komponente, aktuellste Version, Dateihash und Download-Url enthält. Dein Programm lädt die Liste herunter, vergleicht mit den lokalen Versionen, lädt die neuen herunter, checkt den Hash und überschreibt die alten.
Falls du auch Dateitypen, welche keine Versionsinfo enthalten, updaten möchtest, musst du halt vorher den Hash berechnen (bzw. speichert diesen vom letzten Update).

E
eigeneachse Themenstarter:in
40 Beiträge seit 2007
vor 17 Jahren

Erstmal danke für die Antworten,
ich habe auch schon an solche Szenarien gedacht. Die Lösung von Borg gefällt mir auch sehr gut. Ist ähnlich wie der CSAutoUpdater.
Ich wollte mich bisher nicht auf eine eigengestricktge Lösung einlassen, weil ich mir gedacht habe, dass es da doch etwas fertiges aus dem Hause MS oder so geben sollte. Ich bin ja sicher nicht der einzigste der solche Ideen hat.

Ich befürchte es bleibe mir nichts anderes als es selbst zu stricken.

Ich bedanke mich trotzdem für Eure beiträge und bin immer noch der Hoffnung, dass jemand einen Standardweg kennt.

Gruß

eigeneachse

F
10.010 Beiträge seit 2004
vor 17 Jahren

Nocheinmal, wofür?

Deine Ausführung zeigt in keinster weise was Du brauchst, bzw. vermisst.
Du schreibst nur, welche Libs Du erfolglos getestet hast, aber nicht warum die
einzelne nicht passt.

E
eigeneachse Themenstarter:in
40 Beiträge seit 2007
vor 17 Jahren

Hallo FZelle,
Zu CSAutoUpdater: Ich habe das Problem gehabt, dass mein Tool nicht Upgedatet wurde. Es wurde mir zwar ein Update Verzeichnis angelegt, aber die Dateien sind nicht ausgetauscht worden. Das Updater Programm hat in meinem Fall nicht funktioniert.

Zu Updater block: Ich habe es nicht einmal geschafft die nötigen dlls aus dem Updater Application Block 2.0 Projekt ( wie hier beschrieben ) zu kompilieren. Mag vielleicht auch daran liegen, dass ich nur Express habe. Weis es aber nicht. Ich habe diesen Weg nicht weiter verfolgt.

Vielleicht habe ich auch viele Fehler gemacht. Ich bin aber immer für Hinweise dankbar.

Gruß

eigeneachse

F
10.010 Beiträge seit 2004
vor 17 Jahren

Jetzt weiss ich ganz genau, was Du brauchst.

Du brauchst ersteinmal eine Liste, in der steht was Du haben willst, und nicht, was Du nicht willst 😉

Aus dem was Du bis jetzt erzählt hast, ist nicht klar, warum z.B. Clickonce nicht
ausreicht.
Oder was genau alles wann ausgetauscht werden soll, wo es liegen soll,
Verwaltung.......

E
eigeneachse Themenstarter:in
40 Beiträge seit 2007
vor 17 Jahren

Hallo FZelle,
ClickOnce würde mir vom Umfang her vollkommen ausreichen. Das ist im Prinzip genau das was ich haben will. Ich habe mit ClickOnce nur das Problem, dass ich Firefox User dazu zwingen muss entweder über den IE zu installen oder das FFClickOnce Plugin zu installieren. Finde ich persönlich etwas unschön. Ich habe aber auch gelesen, dass das ClickOnce Team bereits an einer Lösung arbeitet.
Das zweite Proble was mir bisher mit ClickOnce aufgefallen ist, ist dass manche User anstatt dem InstallDialog nur das Manifest im Browser angezeigt bekommen. Dieses Problem konnte ich bisher auch nicht Lösen.

Wie gesagt die Features von ClickOnce wären Perfekt. Das Installen mit IE oder mit Plugin kann ich verschmerzen.
Wenn Du eine Lösung hast, wie ich das mit dem Manifest im Browser wegbekomme, wäre mir eigentlich auch sehr geholfen.

Ich bedanke mich schonmal für deine Mühen und Deine Hartnäckigkeit 😁 (nicht böse gemeint, ich bin darüber sehr froh )

Gruß
eigeneachse

1.820 Beiträge seit 2005
vor 17 Jahren

Hallo!

Ich z.B. hatte das Problem, das eine durch PlugIns erweiterbare Anwendung nicht immer komplett upgedatet werden sollte, sondern lediglich die Dateien übertragen werden sollten, welche neu waren (und evtl. welche neuen davon der Benutzer vorher auswählen konnte).
Ein Update aus der Anwendung selbst schlägt fehl, da die Dateien ja dann gerade vom Framework gesperrt werden (wie macht das eigentlich ClickOnce?), also war ein separates Update-Programm schonmal gewissermaßen vorgeschrieben. Z.Zt. versuche ich denselben Weg wie von Borg beschrieben durchzuführen.

Nobody is perfect. I'm sad, i'm not nobody 🙁

X
40 Beiträge seit 2005
vor 17 Jahren

Original von eigeneachse
Hallo FZelle,
ClickOnce würde mir vom Umfang her vollkommen ausreichen. Das ist im Prinzip genau das was ich haben will. Ich habe mit ClickOnce nur das Problem, dass ich Firefox User dazu zwingen muss entweder über den IE zu installen oder das FFClickOnce Plugin zu installieren. Finde ich persönlich etwas unschön.

http://channel9.msdn.com/ShowPost.aspx?PostID=138879

Damit kannst du dir eine Setup.exe erstellen, die mit allen Browsern funktioniert. Setzen wir schon längere Zeit erfolgreich ein.

Das zweite Proble was mir bisher mit ClickOnce aufgefallen ist, ist dass manche User anstatt dem InstallDialog nur das Manifest im Browser angezeigt bekommen. Dieses Problem konnte ich bisher auch nicht Lösen.

Wahrscheinlich sendet der Server die falschen Mime-Types:

application/x-ms-application .application
application/x-ms-application .manifest

Damit sollte es gehen.