AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Online Update für Programme
Thema durchsuchen
Ansicht
Themen-Optionen

Online Update für Programme

Ein Thema von Tim.exe · begonnen am 11. Jun 2003 · letzter Beitrag vom 11. Jun 2003
Antwort Antwort
Tim.exe

Registriert seit: 29. Apr 2003
186 Beiträge
 
#1

Online Update für Programme

  Alt 11. Jun 2003, 13:42
Hallo,

was ist den die gängigste und auch einfache Methode um ein Online Update von Programme zu realisieren? Gibt es da VCL oder Tuts???

Ich möchte auch gar keine umfangreiche und komplizierte Update-Funktion einbauen, ich habe wir sowas vorgestellt:

Der User kann auf "Update Suche" auf der Form klicken. Wenn keine Internetverbindung besteht wird er darauf aufmerksam gemacht und wenn bereits eine Verbindung steht, wird irgendwie meine Webseite ausgelesen (passiert unbemerkt in Hintergrund) in deren Quellcode hinterlegt ist ob ein Update oder neuere Version vorhanden ist oder nicht.
Dem User wird dann angzeigt ob es ein Update / eine neuere Version des Programms zur Verfügung steht.

Es geht also nur um die Anzeige ob ein Update vorhanden ist oder nicht, Die Installation des Updates soll der User manuell machen.

Kann da jemand helfen?

Gruss
Tim
!!! Sigs stinken !!!
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#2
  Alt 11. Jun 2003, 14:09
Probier's mit der Funktion von EnSaCom

Code:
{
Die Datei update.ini wird heruntergeladen und als update.000 abgespeichert.
Die Datei update.upd wird heruntergeladen und gespeichert.
Es wird geprüft ob die Datei update.ini verfügbar ist
Wenn sie verfügbar ist, wird überprüft ob das Datum darin älter als das Datum in
update.000 ist. Wenn es älter ist dann wird die update.ini gelöscht, die update.000
in update.ini umbenannt und die Datei update.upd entpackt.
Wenn das Datum in der heruntergeladenen Datei update.ini nicht neuer als das Datum
in der vorhandenen Update.ini ist, werden die Dateien update.upd und update.000
gelöscht
}


procedure TForm1.Update2Click(Sender: TObject);
var
  old, new : string;
begin
if DownloadFile('http://www.ensacom.de/Delphiprogramme/Delphimanager/update.ini',(Extractfilepath(Application.exename)+'Update\update.000')) then
begin
  DownloadFile('http://www.ensacom.de/Delphiprogramme/Delphimanager/update.upd',(Extractfilepath(Application.exename)+'Update\update.upd'));
end;
 iniold := tinifile.Create(Extractfilepath(Application.exename)+'Update\update.ini');
  try
  old := iniold.ReadString('Version','Datum','');
  finally
  iniold.Free;
  end;

  ininew := tinifile.Create(Extractfilepath(Application.exename)+'Update\update.000');
  try
  new := ininew.ReadString('Version','Datum','');
  finally
  ininew.Free;
  end;

  if old < new then begin
  if MessageDlg('Es ist ein neues Update verfügbar. Jetzt installieren?',
     mtConfirmation, [mbYes, mbNo], 0) = mrYes then
  begin
     deletefile(Extractfilepath(Application.exename)+'Update\update.ini');
     renamefile(Extractfilepath(Application.exename)+'Update\update.000',(Extractfilepath(Application.exename)+'Update\update.ini'));

    UpdateInstallieren(self);
    CB_THEMEN.Items.LoadFromFile(PathTHM+'\Themen.thm');
    CB_Themen.DropDownCount:=CB_THEMEN.Items.Capacity;
    CB_THEMEN.ItemIndex:=0;
    CB_ThemenSelect(self);
  end;
  end
  else
  begin
     showmessage('Kein neues Update verfügbar!');
     deletefile(Extractfilepath(Application.exename)+'Update\update.000');
     deletefile(Extractfilepath(Application.exename)+'Update\update.upd');
  end;
end;
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Tim.exe

Registriert seit: 29. Apr 2003
186 Beiträge
 
#3
  Alt 11. Jun 2003, 14:26
Vielen Dank, werde ich ausprobieren.

Mir ist auch noch folgendes eingefallen (wie gesagt es soll ganz einfach sein):

- Der User klickt "Online Update".
- Auf dem Server gibt es eine "Update.txt" die ich immer wieder manuell ändere (wenn updates vorhanden sind oder nicht).
- es wird die "Update.txt" auf dem Webserver geöffnet.
- In der Update steht irgendwas (z.B: "Update vorhanden" oder "Update nicht vorhanden").
- Das Programm liest die "update.txt" und vergleicht die Strings
- Wenn in der "Update.txt" steht "Update vorhanden" dann wird dem User angezeigt "Update ist vorhanden"...

Müsste doch auch gehen oder muss man da noch was bestimmtes beachten?
!!! Sigs stinken !!!
  Mit Zitat antworten Zitat
Spoon

Registriert seit: 26. Apr 2003
39 Beiträge
 
#4
  Alt 11. Jun 2003, 17:23
Meine einfachste Lösung war einfach, dass ich jeder Version eine Versionsnummer zugeordnet habe. Beim Überprüfen auf Updates wurde eben eine solche *.txt datei runtergeladen, in der nur eine zahl stand.
War diese Zahl größer als die Versionsnummer war ein neues Update vorhanden, wenn nicht - dann nicht.
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:37 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