Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Datei mit Fortschrittsanzeige auf einen Ftp-Server hochlade (https://www.delphipraxis.net/26810-datei-mit-fortschrittsanzeige-auf-einen-ftp-server-hochlade.html)

Dark-L0rd 31. Jul 2004 17:30

Re: Datei mit Fortschrittsanzeige auf einen Ftp-Server hoch
 
Das mit dem Dateigröße ermitten habe ich jetzt anderes gemacht, jetzt geht es:

Delphi-Quellcode:
for i := 0 to 9 Do
   begin
    if ser_dat1[i] = '' then break;
    if FindFirst(ser_dat1[i], faAnyFile, srec) = 0 then
    begin
     try
      iFileSizeAll := iFileSizeAll + srec.Size;
     finally
      FindClose(srec);
     end;
    end;
   end;
Das progg fror immer bei Hochladen ein... Ich habe jetzt einfach 'son IdAntiFreeze1 hinzugefügt, jetzt geht das...

Ich habe jetzt nur noch ein Problem: Das setzten der Position der StatusBar des Server-Statuses.
Ich habe das jetzt so gemacht, dass die Position immer nach der Größe der Hochzuladenen Datei ist.
(z.b. Datei 1 = 10 MB; Datei 2 = 50 MB; StatusbarMax = 70 MB; Position beim anfang des Hochladens der ersten Datei = 20/70; Position beim Anfang des Hochladens der zweiten Datei = 70/70)
Die Lösung ist irgendwie unschön, vorallem wenn die zweite Datei noch hochläd, aber die Server-Status-Bar schon voll ist...
Gibt es da eine besser möglichkeit die Position zu aktuallisieren?
Schonmal Danke für die Hilfe!

Dark-L0rd 31. Jul 2004 17:30

Re: Datei mit Fortschrittsanzeige auf einen Ftp-Server hoch
 
Das mit dem Dateigröße ermitten habe ich jetzt anderes gemacht, jetzt geht es:

Delphi-Quellcode:
for i := 0 to 9 Do
   begin
    if ser_dat1[i] = '' then break;
    if FindFirst(ser_dat1[i], faAnyFile, srec) = 0 then
    begin
     try
      iFileSizeAll := iFileSizeAll + srec.Size;
     finally
      FindClose(srec);
     end;
    end;
   end;
Das progg fror immer bei Hochladen ein... Ich habe jetzt einfach 'son IdAntiFreeze1 hinzugefügt, jetzt geht das...

Ich habe jetzt nur noch ein Problem: Das setzten der Position der StatusBar des Server-Statuses.
Ich habe das jetzt so gemacht, dass die Position immer nach der Größe der Hochzuladenen Datei ist.
(z.b. Datei 1 = 10 MB; Datei 2 = 50 MB; StatusbarMax = 70 MB; Position beim anfang des Hochladens der ersten Datei = 20/70; Position beim Anfang des Hochladens der zweiten Datei = 70/70)
Die Lösung ist irgendwie unschön, vorallem wenn die zweite Datei noch hochläd, aber die Server-Status-Bar schon voll ist...
Gibt es da eine besser möglichkeit die Position zu aktuallisieren?
Schonmal Danke für die Hilfe!

Ricane 15. Aug 2004 17:52

Re: Datei mit Fortschrittsanzeige auf einen Ftp-Server hoch
 
Moinsen,

ich habe ein Problem mit dieser OnWork Prozedur....... so sieht meine aus......

Delphi-Quellcode:
Procedure TfrmMain.ServerDatenWork(Sender: TObject; AWorkMode: TWorkMode;
  Const AWorkCount: Integer);
Begin

  frmMain.Server.Socket.Connections[0].SendText('310' + IntToStr(AWorkCount));
  Application.ProcessMessages;

End;
Wie man sieht, gleicht sie dem Model was etwas weiter oben steht! Aber das Problem ist: Er geht dort NIE rein! Die WorkStart und WorkEnd Prozeduren macht er, der Datentransfer (darin geht es in meinem Prog.) klappt auch wunderbar! Aber er geht nicht in die OnWork Prozedur rein.....

Wer weiss woran das liegen kann?!

PS: Das "310" ist nur der Erkennungscode, damit ich auf "der anderen Seite" anzeigen kann, wie weit der Transferstatus ist.....



Beste Grüsse,

Ricane

Luckie 15. Aug 2004 17:55

Re: Datei mit Fortschrittsanzeige auf einen Ftp-Server hoch
 
Wie groß ist denn der Download mit dem du es probierts? Und hast du die Ereignisse im Code auch den entsprechenden Ereignissen der Objekte (im OI) zugewiesen?

Ricane 16. Aug 2004 06:46

Re: Datei mit Fortschrittsanzeige auf einen Ftp-Server hoch
 
Zitat:

Zitat von Luckie
Wie groß ist denn der Download mit dem du es probierts? Und hast du die Ereignisse im Code auch den entsprechenden Ereignissen der Objekte (im OI) zugewiesen?

Die Größe der Dateien war immer ganz unterschiedlich.. von 0 Byte bis > 100 MByte.

Ich habe bei jedem der drei Events immer per Doppelklick auf das jenige Event eine Prozedure erstellt und diese dann mit Code gefüllt... aber warum das nur bei der nicht funzt ist mir ein Rätsel! :gruebel:


Beste grüsse,

Ricane


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 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