AGB  ·  Datenschutz  ·  Impressum  







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

Download (Thread)

Ein Thema von devnull · begonnen am 4. Mär 2004 · letzter Beitrag vom 5. Mär 2004
Antwort Antwort
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#1

Re: Download (Thread)

  Alt 5. Mär 2004, 13:19
Hallo devnull,

das ist alles äusserst schlecht, was Du da machst.
Wenn Du urlDownloadFile in einem Thread aufrufst, wird auf DownloadThread.UpdateForm1; in diesem Thread aufgerufen.
Und da Du in UpdateForm auf die VCL zugreifst (Buttons, Labels) MUSS dieser Aufruf mit Synchronize erfolgen.!
Undbedingt.
Noch viel Besser wäre natürlich, wenn Du ein Update Event einrichtest.
Was ist, wenn Du diesen DownloadThread nochmal verwenden willst, aber z.B. mit einem ganz anderen Form ?

Du solltest Dir also ein Status Event einrichten. Und das aktualisieren von Buttons übernimmt das FORM SELBER !

TDownStatusEvent = procedure( sender : Tobject; progress, progressmax, status : integer) of object;

Nun zu Deinem Problem.

Das

Code:
BINDSTATUS_ENDDOWNLOADDATA : begin
        PagesDlg1.Label4.Caption := 'Download "'+fileinfo+'" fertiggestellt ...';
        DownloadThread.UpdateForm1;
    end;
ist nur ne MEldung, da ist Dein Download noch nicht zu ENDE.

Du musst also in BINDSTATUS_ENDDOWNLOADDATA eine Variable "FERTIG" setzen.
Und dann

Code:
try
   UrlDownloadtoFile(nil, PCHAR(runterladen), PCHAR(speichernals), 0, CDownStatus);
  if not abgebrochen or sonstwas and fertig then
   begin
    if MessageDlg ('Programm beenden und Update entpacken ?',mtConfirmation,[mbYes,mbNo],0)
        = mrNo then exit;
    ShellExecute(self.Handle, NIL, pchar(speichernals),'','',SW_SHOWNORMAL);
    halt;
   end;


  finally
    cDownStatus.Free;
  end;
  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 16:10 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-2025 by Thomas Breitkreuz