Delphi-PRAXiS
Seite 6 von 16   « Erste     456 78     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   TMSWebUpdate - eine neue WebUpdate-Komponente (https://www.delphipraxis.net/109301-tmswebupdate-eine-neue-webupdate-komponente.html)

fylo 29. Jun 2008 10:29

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Zitat:

Zitat von Marco Steinebach
Eine Frage noch:
Ist bei dir der SourcePath mit im Suchpfad von Delphi angegeben?
In welchem Verzeichnis liegt bei dir die IdCompilerDefines.inc?

Hallo Marco,

ich nutze die Subversion-Version von Indy 10. Bei dieser ist die Datei IdCompilerDefines.inc in den Unterverzeichnissen Core, System und Protocols enthalten. Diese drei Verzeichnisse sind bei mir in meinem Delphi 7 auch im Suchpfad eingetragen. Ich weiß aber nicht mehr, ob dass das Indy-Setup gemacht hat oder ob ich es selber gemacht hab :gruebel:

Svenkan 1. Jul 2008 13:48

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Hallo Marco,

nach anfänglichen Problemen funktioniert nun auch bei mir alles wunderbar!
Wie wäre es aber noch mit einer Möglichkeit, dass bspw. in ein Edit-Feld eintragen kann, welche Dateien bereits heruntergeladen wurden? Oder irgendwie anders kenntlich machne, dass der Download noch läuft? ;)

Marco Steinebach 1. Jul 2008 16:29

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Hallo Listers,
Es gibt, mal wieder, ‚ne neue Version:

Neuerungen in TWebUpdate V1.10.0 vom 01.07.2008:
Als erstes möchte ich mich für das kommende im voraus entschuldigen. All diejenigen, die TwebUpdate bereits eingebunden haben, müssen nämlich ein paar Zeilen code ändern, denn:
TWebUpdate, jedenfalls der Code und die Info-Datei, sind ab sofort in englisch. Die englische Doku läßt noch ein wenig auf sich warten.
Aber keine Angst, es wird nicht wieder deutsch, also wer jetzt ändert, braucht das nicht nochmal machen. ;-)
Das heißt: die eigenschaften bleiben gleich, SucheNachUpdates ist zu CheckForUpdates geworden, und die ereignisse entsprechen allesamt dem Standard.

Als weiteres gibt es eine Fehlerbehandlung (OnError), die verschiedene Fehlercodes interprätieren kann. Bitte auch das Demo und TwebUpdate.pas hierzu anschauen.

Ein herzliches Dankeschön an DiamondBack2007 für die Erstellung eines Zählers, der es ermöglicht, die Größe aller herunterzuladenden Dateien zu bestimmen.

Auf die anderen Vorschläge gehe ich gesondert ein, kann ein, zwei Tage dauern.
Das Demo wird auch nochmal erweitert, – damit es ein bißchen aussagekräftiger wird.

Viel Spaß mit der neuen Version und immer her mit Ideen, Lob, Kritik und sowas!

Einen schönen Abend!
Marco

shmia 1. Jul 2008 17:41

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Hier sind bestimmt noch Units drin, die nicht gebraucht werden (z.B. Graphics, Controls)
Delphi-Quellcode:
unit WebUpdate;
interface
{$i WebUpdate.inc}
// Diverse Compilerschalter.
// bitte dringend überprüfen, ob diese euren Anforderungen gerecht werden.,
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Und noch ne Idee:
Man sollte die Update-Komponente vom Downloader trennen.
Soll heisen, es wäre gut, wenn man Indy ganz einfach durch etwas anderes austauschen könnte.
Der Downloader hat ja nicht anderes zu tun, als eine URL herunterzuladen und in einer best. Datei abzulegen.
Dabei soll er aber nach Möglichkeit OnProgress Event unterstützen, damit man ggf. eine ProgressBar ansteuern kann.
Delphi-Quellcode:
TDownloader = class(TObject)
public
   procedure DownloadURL(const URL, DestFilename : string); virtual;
   property OnProgress: TProgressEvent;
end;
Davon könnte man konkrete Klassen ableiten: TIndy9Downloader, TIndy10Downloader und TSimpleDownloader.
TSimpleDownloader benötigt kein Indy, sondern verwendet die Funktion URLDownloadToFile aus Unit UrlMon.
Dafür kann der TSimpleDownloader keine ProgressEvents erzeugen; aber das kann man verschmerzen.
Wenn ein Downloader eine URL nicht runterladen konnte, dann wirft er eine Exception.

Svenkan 1. Jul 2008 18:28

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
*** Vorherigen Satz bitte vergessen (falls gelesen)! Hab meine INI nicht bearbeitet. :wall: ***

Ich wollte mal gerne wissen, an welcher Stelle ich 'AllFileSize' anwenden kann. Denn bisher bekomme ich (Prozedur 'UpdateFound') nur eine 0 ausgegeben.

Marco Steinebach 1. Jul 2008 18:34

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Zitat:

Zitat von Svenkan
Also ich habe mir grad das Update installiert, allerdings funktioniert der Download nun nicht mehr.
Sobald ich den Download des Updates bestätige, bekomme ich einen Zugriffsfehler.

Eine Exception oder wie?
Läßt du das Proggi unter der IDE laufen, so daß die Delphi-Exceptions ausgelöst werden?


Zitat:

Zitat von Svenkan
Desweiteren wollte ich mal gerne wissen, an welcher Stelle ich 'AllFileSize' anwenden kann. Denn bisher bekomme ich (Prozedur 'UpdateFound') nur eine 0 ausgegeben.

AllFileSize ist dafür gedacht, die ProgressBar vernünftit berechnen zu können. Wenn eine neue Programmversion gefundne wurde, also bevor DownloadStart loslegt, ist die Eigenschaft AllFileSize mit der Gesamtgröße aller herunterzuladender Dateien gefüllt.
Schau dir mal die prograssbar im Demoprogramm an.
Viele Grüße
Marco

Svenkan 1. Jul 2008 18:42

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Zitat:

Zitat von Marco Steinebach
Zitat:

Zitat von Svenkan
Also ich habe mir grad das Update installiert, allerdings funktioniert der Download nun nicht mehr.
Sobald ich den Download des Updates bestätige, bekomme ich einen Zugriffsfehler.

Eine Exception oder wie?
Läßt du das Proggi unter der IDE laufen, so daß die Delphi-Exceptions ausgelöst werden?

Siehe Post-Edit :D


Zitat:

Zitat von Marco Steinebach
Zitat:

Zitat von Svenkan
Desweiteren wollte ich mal gerne wissen, an welcher Stelle ich 'AllFileSize' anwenden kann. Denn bisher bekomme ich (Prozedur 'UpdateFound') nur eine 0 ausgegeben.

AllFileSize ist dafür gedacht, die ProgressBar vernünftit berechnen zu können. Wenn eine neue Programmversion gefundne wurde, also bevor DownloadStart loslegt, ist die Eigenschaft AllFileSize mit der Gesamtgröße aller herunterzuladender Dateien gefüllt.
Schau dir mal die prograssbar im Demoprogramm an.

Dankeschön! Funktioniert wunderbar!

Kann man eigtl. 2 Dateien nach dem Update starten lassen? (z.B. Programm und Readme)
Ich habe mal testweise bei zweien das Attribut 'Start' auf '1' gesetzt, allerdings wird nur die erste geöffnet.

Pif 1. Jul 2008 21:32

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Wenn ich ein neues PAckage mache und die 3 units einfüge und es dann installieren will bekomme ich nen error:

requires
vclx,
vcl,
rtl;

was muss ich da machen? wo bekomme ich diese dateien her?

MfG Pif

Svenkan 1. Jul 2008 23:03

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
/edit: Sry, hab mich verlesen. Ich sollte jetzt echt mal ins Bett gehen. ^^

Diamondback2007 3. Jul 2008 02:28

Re: TWebUpdate - eine neue WebUpdate-Komponente
 
Hey,

also erst mal finde ich es super, dass jetzt alles in Englisch ist :) :thumb:
Ich bin gerade dabei einen UpdateCreator zu erstellen, wenn der fertig, kann ich den ja hier mal posten.
Als Anregungen. Du könntest noch implementieren, dass auf dem Server Ordner mit den einzelnen Dateien liegen. Diese würden dann genauso heißen wie später nach dem Download. Du würdest also praktisch die gesamte Ordnerstruktur auch auf dem Server haben. Das schafft Ordnung.

Und wenn du Lust hast, könntest du auch noch eine Backupmöglichkeit einbauen. Bei einem neuen Update könntest du die zu ersetzenden Dateien einfach in einen Backupordner kopieren und bei Bedarf wiederherstellen.

gruß


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:16 Uhr.
Seite 6 von 16   « Erste     456 78     Letzte »    

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