AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi IdFTP Durchschnitts- geschwindigkeit ermitteln?? Bei dl/upl.
Thema durchsuchen
Ansicht
Themen-Optionen

IdFTP Durchschnitts- geschwindigkeit ermitteln?? Bei dl/upl.

Ein Thema von Freecer · begonnen am 1. Nov 2003 · letzter Beitrag vom 19. Dez 2003
Antwort Antwort
Seite 2 von 2     12   
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#11

Re: IdFTP Durchschnitts- geschwindigkeit ermitteln?? Bei dl/

  Alt 5. Nov 2003, 10:15
Mal eine kleine Zwischenfrage: Welche Version von Indy benutzt du? Die, die bei Delphi dabei ist, oder eine aktuelle Indy 9 von http://www.indyproject.org/?

Hast du ein neues Projekt erstellt oder hast du das Indy FTP Demo geöffnet und nach dem Tutorial geändert?
  Mit Zitat antworten Zitat
Freecer

Registriert seit: 30. Okt 2003
44 Beiträge
 
#12

Re: IdFTP Durchschnitts- geschwindigkeit ermitteln?? Bei dl/

  Alt 5. Nov 2003, 15:34
benutze eines von der indy homepage das 9er....

In ein eigenes projekt eingebaut.....

mfg.

kann ja mal den quellcode hier posten....

Delphi-Quellcode:
unit pubunit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Mask, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, IdFTP, IniFiles, ComCtrls, IdAntiFreezeBase, IdAntiFreeze;

type
  TForm1 = class(TForm)
    IP: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    PathEdit: TEdit;
    Label3: TLabel;
    UserID: TEdit;
    Label4: TLabel;
    PasswordEdit: TEdit;
    Label5: TLabel;
    Button1: TButton;
    IdFTP1: TIdFTP;
    Memo1: TMemo;
    Edit1: TEdit;
    ProgressBar1: TProgressBar;
    StatusBar1: TStatusBar;
    IdAntiFreeze1: TIdAntiFreeze;
    procedure Button1Click(Sender: TObject);
    procedure IdFTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
      const AWorkCountMax: Integer);
    procedure IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
      const AWorkCount: Integer);
  private
    { Private declarations }
  public
  
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
IdFTP1.Username := UserID.Text;
  IdFTP1.Password := PasswordEdit.Text;
  IdFTP1.Host := IP.Text;
  IdFTP1.Connect;
  IdFTP1.ChangeDir(PathEdit.Text);
  IdFTP1.Put(Edit1.Text,
  ExtractFileName(Edit1.Text));
  end;

procedure TForm1.IdFTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCountMax: Integer);
begin
ProgressBar1.Max := AWorkCountMax;
  ProgressBar1.Position := 0;

end;



procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);

  Var
  S: String;
  TotalTime: TDateTime;
  H, M, Sec, MS: Word;
  DLTime: Double;
  STime: TDateTime;
  AverageSpeed: 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: StatusBar1.Panels[0].Text := 'Download speed ' + S;
    wmWrite: StatusBar1.Panels[0].Text := 'Uploade speed ' + S;
  end;

  //Aktualisieren der Fortschrittsanzeige:
  ProgressBar1.Position := AWorkCount;
end;

end.
Is der ganze quell code sinn von dem prog ist es einen vom user eingegebene ftp adresse zu connecten ein 1mb file up zu loaden und danach die geschwindigkeit zurück zu geben (in einem memo feld)!
  Mit Zitat antworten Zitat
-Volle-

Registriert seit: 17. Dez 2003
Ort: Altdorf
40 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: IdFTP Durchschnitts- geschwindigkeit ermitteln?? Bei dl/

  Alt 19. Dez 2003, 10:53
Also:
ich hatte genau das gleiche Problem... bei mir ist auch immer die Anzeige eingefroren...
Mit TIDAntifreeze geht das Einfrieren weg...
wenn die progressbar den status anzeigen soll, dann musste ich das so loesen:
AWorkcountmax wurde bei mir immer mit dem Wert 0 uebergeben... wenn man aber die Dateigroesse der Datei auf dem FTP Server ausliest  idftp1.size('blub.txt') und mit diesem Wert rechnet dann funktioniert die Anzeige OHNE Probleme...

naja, kommt n bissl spaet, habs eben erst grad gesehn....
cYa n' sTay [ S ! C ]

Gruss Volle
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 23:52 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