Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi INDY-FTP optimieren? (https://www.delphipraxis.net/88525-indy-ftp-optimieren.html)

Svenkan 17. Mär 2007 13:50

Re: INDY-FTP optimieren?
 
Asoo!
Jetzt versteh ich dich.
Klingt ja schonmal einfacher, als das mit den Threads.
Erzielt man mit dieser Methode denn auch vegleichbare Ergebnisse?

Habs jetzt mal so gemacht, funzt auch (danke :)):

Delphi-Quellcode:
procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
 BtFileUpload.Enabled:=False;
 try
   Application.ProcessMessages;
  finally
    BtFileUpload.Enabled:=True;
end;
end;

SirThornberry 17. Mär 2007 16:48

Re: INDY-FTP optimieren?
 
wozu du hier Try-Finally nutzt und den Button kurzzeitig deaktivierst weißt aber auch nur du :gruebel:

Svenkan 17. Mär 2007 17:25

Re: INDY-FTP optimieren?
 
Wie solln das sonst gehen?

inherited 17. Mär 2007 17:54

Re: INDY-FTP optimieren?
 
Kommt drauf an was du machen möchtest. Wenn du, wie ich vermute, den Upload-Button während des uploads deaktivieren möchtest, dann packe ins OnWork nur Application.ProcessMessages und in OnWorkBegin und OnWorkEnd jeweils die Enabled-Änderungen für den Button

Svenkan 18. Mär 2007 13:47

Re: INDY-FTP optimieren?
 
Jetzt brauch ich nur noch das mit dem Ladebalken. Momentan wird für jede Datei einzeln der Upload 'gebildet'. Allerdings möchte ich, dass es für den kompletten Upload gemacht wird.

Delphi-Quellcode:
procedure TForm1.IdFTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCountMax: Integer);
begin
 BtFileUpload.Enabled:=False;
  ProgressBar1.Max := AWorkCountMax;
  ProgressBar1.Position := 0;
end;

procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
   Application.ProcessMessages;
   
  //Aktualisieren der Fortschrittsanzeige:
  ProgressBar1.Position := AWorkCount;;
end;

procedure TForm1.IdFTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode);
begin
    BtFileUpload.Enabled:=True;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:28 Uhr.
Seite 2 von 2     12   

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