Hi.
Ich habe ein Problem mit einer ProgressBar...
Ich habe ein Programm geschrieben, mit dem man eine einzelne Datei übers Internet versenden kann. Verbindung etc. klappt super und derjenige, der den Server aufmacht, kann auch eine ProgressBar sehen, da man dort die eingehende Dateimenge abfragen kann. Beim Client geht das allerdings nicht... und ich habe keine Ahnung, wie ich auch dem Client eine Fortschrittsanzeige gönnen kann .
Der Server empfängt hier die Dateien (er macht nur die Ports auf seinem Rechner auf). Der Client sendet per Buttonklick die Datei.
Das ganze ist mit 4 Komponenten gelöst (bitte keine Kommentare wie: "Hach ist das umständlich gemacht *blablabla* *schwafel*" - ich weiß, dass ich kein Programmiergenie bin). Das sind die Komponenten FileSocket, FileSocketServer, Server und Client.
Ich habe versucht die Progressbar für den Client so zu lösen:
Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| var buffer : array[0..999999] of char;
procedure TForm1.FileSocketRead(Sender: TObject; Socket: TCustomWinSocket); var SendLen : integer; begin SendLen := socket.SendBuf(Buffer, Sizeof(Buffer)); ProgressBar1.StepBy(SendLen); end; |
Doch es scheint gar nicht anzuspringen. Wieso? Hab ich es nur in die falsche Prozedur geschrieben?
Danke für eure Hilfe! Wer will, kann mich auch anmailen, dann sende ich euch den ganzen Code.
Edit: Die FAQ hat mir leider nix gebracht... denn da fehlt die Auswertung! Und genau die will bei mir ja nicht klappen ^^ .
C ya!
Moderiert von
Peter Lustig: Code- durch Delphi-Tags ersetzt