AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Idee für ein LiveUpdate

Ein Thema von Die Muhkuh · begonnen am 21. Jan 2005 · letzter Beitrag vom 22. Jan 2005
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#1

Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:10
Hi,

ich plane für mein Programm ein LiveUpdate zu machen. Meine Idee sieht wie folgt aus:

Es gibt ein extra Programm. Sobald man in diesem Programm auf "Nach Updates suchen" klickt, lädt das Programm eine Dateiliste herunter die nach folgendem Schema aufgebaut ist:

Code:
<URL zur Datei>;<Dateigröße>;<Dateidatum>;<Ordner in den die Datei kopiert werden soll>
Diese Datei wird nun runtergeladen. Danach gibts nun zwei Möglichkeiten:

1. Möglichkeit
Das Programm erstellt von eine Lokale FileList und ich prüfe per Pos() ob ein Eintrag vorhanden ist. Wenn nein -> Auf die Update list und dann runtergeladen.

2. Möglichkeit
Der String wird geparst, und es wird auf dem Rechner nach der Datei gesucht. Wenn die Datei gefunden wird und Datum und Größe stimmen nicht überein, kommt der String in die Updatelist. Wenn die Datei nicht gefunden wird, kommt der String auch in die Updatelist.

Wenn nun alle Dateien überprüft wurden, wird das ganze Zeugs runtergeladen.

Was haltet ihr von dem Konzept? Oder habt ihr was besseres?
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:22
Möglichkeit 3:
Du nimmst RunTime Packages und sorgst dafür, dass deine Echse nur einen leeren "Rumpf" darstellt. Sämtliche Klassen für UI und Logik hast du in den Packages.
Diese kannst du dann bei Bedarf entladen, ersetzen und neu laden.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:24
Ähm,

sorry, ich hab kein bisschen verstanden Kannst du mir das mal genauer erklären?
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:42
Kurz: Dein "Programm" ist eine (odere mehrere) DLL(s), die von einem Miniprogramm geladen werden und deren Windowfunktionen ausgeführt wird (such mal nach Hier im Forum suchenrundll, könnte helfen ). Wenn du jetzt ein Update startest, kickt dein Programm die DLLs aus dem Speicher und nimmt stattdessen die neuen.

Ich hoffe, das war kurz und verständlich erklärt
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#5

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:42
Na wenn du dich noch nie mit dynamisch geladenen Packages auseinandergesetzt hast, würde es jetzt zu lange dauern.
Da musst du also ( wie Tyler auch) warten, bis ich Zeit habe.

p.s.: Was ich mich immer wieder frage: Warum zum Geier interessiert sich kaum ein Delphianer für die Möglichkeiten von Delphi?
Ich will dir jetzt nicht vorwerfen, dass du nur stupide mit dem Form designer arbeitest. Aber hat dich das Thema Packages noch nie interessiert?
Schließlich besteht die Delphi IDE selbst nur aus einer kleinen Anwendung, der Rest sind Packages, die statisch und dynamisch geladen werden.
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 16:44
Vielleicht hilft die Komponente Internetupdate von meiner HP dir weiter.
  Mit Zitat antworten Zitat
kalmi01
(Gast)

n/a Beiträge
 
#7

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 17:04
Hallo Spider,

ich hab ein ähnliches Prob so gelöst:

1. auf Server liegt eine Liste.SRV mit allen zu installierenden
und zu de-installierenden Dateinamen.
Aufbau: Pfad inkl. Dateiname | Datum_Uhrzeit

Im Header steht nur: Datum_Uhrzeit wann die Liste erstellt wurde.

2. auf dem lokalen Rechnern liegt eine Liste.LOC, mit gleichem Aufbau wie Liste.SRV

Bei der Installation der Software wird Liste.SRV zu Liste.LOC kopiert.

Ein kleines Prg. ließt erste Zeile mit Datum_Uhrzeit aus Liste.SRV und Liste.LOC
Sind beide Strings nicht identisch, wird nun das "richtige" Update-Prg. aufgerufen.

Update-Prg. vergleicht beide Stringlisten von Liste.SRV und Liste.LOC miteinander.
Ist der Datum_Uhrzeit-String = 0, wird die entsprechende Datei gelöscht.
Sind die Datum_Uhrzeit-Strings von Liste.SRV und Liste.LOC nicht gleich und nicht 0,
so wird kopiert.

Am Ende wird noch Liste.SRV zu Liste.LOC kopiert.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 17:05
Anstelle von Dateigrösse und Dateidatum wäre eine MD5 oder SHA1 Prüfsumme sinnvoll.
Das Dateidatum könnte sich durch versch. Zeitzonen oder durch die Sommer-/Winterzeit Problematik unterscheiden.
Die Dateigrösse ist kein sinnvolles Entscheidungskriterium.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 17:11
Hi,

@Robert, Dax

das ist mir doch ein bisschen zu aufwenig

@Jelly

thx, ich gucke mir die mal an. Achso, ich kann mit FireFox die Datei nicht downloaden. Ging nur mit dem IE.

@kalmi

Das ist mir auch klar. Sowas hatte ich auch vor

@shima

MD5 bzw. SHA1 ist auch keine schlechte idee.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#10

Re: Idee für ein LiveUpdate

  Alt 21. Jan 2005, 17:18
Hi Jelly,

ich hab mir deine Komponente angesehen, aber da es leider keine Dokumentation bzw. kleines Beispiel Programm gibt, versteh ich nicht ganz wie ich diese Komponente einsetzen soll. Wärst du so nett und schreibst mir ein kleines Beispiel, damit ich mal ein Grundgerüst habe?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:22 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