AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Delphi Einfaches Online Update 2
Thema durchsuchen
Ansicht
Themen-Optionen

Einfaches Online Update 2

Ein Thema von AlexII · begonnen am 31. Aug 2009 · letzter Beitrag vom 24. Okt 2009
Antwort Antwort
Seite 1 von 2  1 2      
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#1

Einfaches Online Update 2

  Alt 31. Aug 2009, 16:37
Nach dem ich sehr sehr lange nach einer Update Lösung für mein Programm gesucht habe und nichts vernünftiges gefunden hab, außer Einfaches Online Update, hab ich mich entschlossen auf dieser Basis ein modifiziertes Online Update 2 zu schreiben.

Und so funktioniert es: Vom Webserver wird eine Datei runtergeladen wo die Infos zu der neuen Version stehen, es wird verglichen, ob diese Version schon installiert ist und wenn nicht wird die neue zum Downloaden angeboten.

Hier der Code:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, URLMon, StdCtrls, ExtCtrls, ShellApi;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Timer2: TTimer;
    procedure Timer1Timer(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Version: Integer=200;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
var Datei, Ziel: PChar;
begin
Timer1.Enabled:=False;
  try
    Datei := 'http://www.meineseite/Datei.txt';
    Ziel := 'C:\test\Datei.txt';
    UrlDownloadToFile(nil, Datei, Ziel, 0, nil);
  except
  end;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var
List: TStrings;
begin
Timer2.Enabled:=False;
if FileExists('C:\test\Datei.txt') then
begin
List := TStringList.Create;
try
  List.LoadFromFile('C:\test\Datei.txt');
  if List.Count>0 then
    if StrToInt(List[0]) > Version then
    if MessageDlg('Neue Version ' + List[1] + ' ist verfügbar!' + CHR(13) + CHR(13) +
    'Neu in dieser Version: ' + CHR(13) +
    List[3] + CHR(13) + CHR(13) +
    'Möchten Sie diese runterladen?', mtInformation, [mbYes, mbNo], 0) = mrYes then
    begin
    ShellExecute(Application.Handle, 'open', PChar(List[2]), nil, nil, SW_SHOWNORMAL);
    end else Timer2.Enabled:=False;
finally
  List.Free;
end;
end;
end;

end.
Die Datei.txt muss so aussehen:
1. Zeile := Die Version ohne einen Punkt in der Mitte damit man Sie mit < bzw. > dann später vergleichen kann
2. Zeile := Die Version so, wie Sie der User dann sehen wird um dann zu entscheiden ob er ein Update will oder nicht
3. Zeile := Die Datei, die gedownloadet werden soll
4. Zeile := Die Beschreibung warum ein Update gemacht werden soll bzw. die Update- Erneuerungen

Ein Beispiel:
Zitat:
230
2.3.0
http://meineseite.de/Prog.exe
Die Beschreibung warum ein Update gemacht werden soll..
Was sagt ihr dazu, bitte eure Meinung.
Angehängte Dateien
Dateityp: zip demo_212.zip (205,4 KB, 37x aufgerufen)
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 13:03
Wo genau liegt jetzt der Unterschied zu meinem bescheidenem Online Update?
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#3

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 13:12
Zitat:
if List.Count>0 then
Weiter unten greifst Du aber auf List[3] zu. Vielleicht sollte man daher die Abfrage etwas ändern
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 13:21
Ich oder er?
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#5

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 13:23
Wessen Quelltext steht denn da oben?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#6

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 15:47
von beiden etwas
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#7

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 15:57
Dann sollten auch beide einmal nachsehen
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 16:08
Außerdem speichert man nicht nach C:\Irgendwas hardgecodetes, für sowas nimmt man ein temporäres Verzeichnis.
Fehlerbehandlung fehlt auch
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#9

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 23:15
Zitat von inherited:
nimmt man ein temporäres Verzeichnis.
Eigentlich nimmt man DAS Temp.Verzeichnis des Users.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
GreenHorn3600

Registriert seit: 24. Jun 2007
165 Beiträge
 
#10

Re: Einfaches Online Update 2

  Alt 3. Sep 2009, 23:59
hallo AlexII,

kannst du mir noch erklären, für was die zwei Timer benötigt werden? Ich blicke da nicht ganz durch

Das GreenHorn
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 01:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz