AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi speedanzeige funktioniert nicht richtig
Thema durchsuchen
Ansicht
Themen-Optionen

speedanzeige funktioniert nicht richtig

Ein Thema von Paul · begonnen am 22. Feb 2004 · letzter Beitrag vom 24. Feb 2004
Antwort Antwort
Seite 1 von 2  1 2      
Paul

Registriert seit: 5. Feb 2004
22 Beiträge
 
#1

speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 15:14
hi,

die INDY-speedanzeige funktioniert nicht richtig????

wird alles wunderbar angezeigt nur der speed wird etwas langsam angezeigt???
angezeigt wird 0.20kb/s aber mit 70kb/s läd er in wirklichkeit runter

Delphi-Quellcode:
procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
Var
  S: String;
  TotalTime: TDateTime;
  H, M, Sec, MS: Word;
  DLTime: Double;
begin
  //Errechnen der Transfergeschwindigkeit:
  TotalTime := Now - STime;
  DecodeTime(TotalTime, H, M, Sec, MS);
  Sec := Sec + M * 60 + H * 3600;
  DLTime := Sec + MS / 1000;
  if DLTime > 0 then
    AverageSpeed := (AWorkCount / 1024) / DLTime;
  S := FormatFloat('0.00 KB/s', AverageSpeed);
  case AWorkMode of
    wmRead: GroupBox3.Caption :=' DownloadSpeed - ' + S; // hier würd ich es gern in der ProgressBar1 anzeigen lassen
  end;

  //Aktualisieren der Fortschrittsanzeige:
  ProgressBar1.Position := AWorkCount;
end;
bin über jede hilfe dankbar

mfg
  Mit Zitat antworten Zitat
Markus K.

Registriert seit: 26. Jan 2004
Ort: Halle
346 Beiträge
 
Delphi 2005 Personal
 
#2

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 15:32
Hi Paul,
müsste bei der Downloadzeitberechnung die Addition(DLTime := Sec + MS / 1000 der Sekunden und Millisekunden nicht in Klammern stehen ? Oder weshalb teilst du nur die Millisekunden durch 1000?

Tschüß Markus
  Mit Zitat antworten Zitat
Paul

Registriert seit: 5. Feb 2004
22 Beiträge
 
#3

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 16:47
hi,

ich kann dir jetzt nicht ganz folgen was du meinst

mfg
  Mit Zitat antworten Zitat
Markus K.

Registriert seit: 26. Jan 2004
Ort: Halle
346 Beiträge
 
Delphi 2005 Personal
 
#4

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 16:50
Hi Paul,
ich meinte damit, dass Punkt vor Strichrechnung geht. Es werden erst die Millisekunden durch 1000 dividiert und danach erst mit den Sekunden addiert. Oder ist es beabsichtigt das sie Millisekunden zuerst durch 1000 geteilt werden? Wenn ja, warum?

Tschüß Markus
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 16:51
Er meint:

DLTime := (Sec + MS) / 1000;
  Mit Zitat antworten Zitat
Paul

Registriert seit: 5. Feb 2004
22 Beiträge
 
#6

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 17:16
besten dank.
der speed wird in angezeigt in einer steigernden form. wird nicht gleich komplett angezeigt sondern fängt bei null an und steigert sich. der wahre speed wird immer noch nicht angezeigt.

besten dank, das hilft mir schon mal weiter.

mfg paul
  Mit Zitat antworten Zitat
Markus K.

Registriert seit: 26. Jan 2004
Ort: Halle
346 Beiträge
 
Delphi 2005 Personal
 
#7

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 17:57
Sorry, aber ich habe mich geirrt
Es stehen deshalb keine Klammern, weil die Millisekunden erst noch in Sekunden umgerechnet werden müssen(die Umrechnung hätte man auch in einer Zeile vereinbaren können).
Meiner Ansicht nach scheint es entweder einen Fehler bei STime oder AWorkCount zugeben.
Welchem Wert hast du denn der TDateTime-Variablen zugewiesen? Es müsste doch eigentlich die Startzeit sein, oder? Hast du auch bei Start des Download/Uploads der Variablen die Startzeit zugewiesen? Denn wenn die Variable den Wert 0 hat, wird die Zeit zu groß, daraus folgt wiederum, dass der Speed zu klein angezeigt wird.
Das die Konstante AWorkCount falsch ist, halte ich für ausgeschlossen, da die Indy-Komponente den Wert übergibt.

Tschüß Markus

PS: Sorry nochmal für den Fehler(ich sollte erst richtig überlegen und dann schreiben ).
  Mit Zitat antworten Zitat
Paul

Registriert seit: 5. Feb 2004
22 Beiträge
 
#8

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 20:33
hi,

Zitat:
Welchem Wert hast du denn der TDateTime-Variablen zugewiesen?
ich habe TDateTime-Variablen keine wert gegeben.

Delphi-Quellcode:
private
    { Private declarations }
    STime:TDateTime;
  public
    { Public declarations }

  end;
mfg Paul
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

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

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 20:40
Zitat von Paul:
hi,

Zitat:
Welchem Wert hast du denn der TDateTime-Variablen zugewiesen?
ich habe TDateTime-Variablen keine wert gegeben.

Delphi-Quellcode:
private
    { Private declarations }
    STime:TDateTime;
  public
    { Public declarations }

  end;
mfg Paul
dann solltest Du schleunigst im Event onworkbegin stime := now setzen
  Mit Zitat antworten Zitat
Paul

Registriert seit: 5. Feb 2004
22 Beiträge
 
#10

Re: speedanzeige funktioniert nicht richtig

  Alt 22. Feb 2004, 23:29
hi,

das hab ich gemacht jetzt hab ich ein speed von 6400kb/s

Delphi-Quellcode:
begin
  //Errechnen der Transfergeschwindigkeit:
  stime := now;
  TotalTime := Now - STime;
  DecodeTime(TotalTime, H, M, Sec, MS);
  Sec := Sec + M * 60 + H * 3600;
  DLTime := Sec + MS / 1000;
ich schau mal was ich machen kann

n8 all

mfg Paul
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 22:13 Uhr.
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