Текущий архив: 2003.09.11;
Скачать: CL | DM;
Вниз
Как узнать скорость передачи данных на FTP сервер???? Найти похожие ветки
← →
Maxim Pshevlotsky (2003-07-08 15:59) [0]Как узнать скорость передачи данных на FTP сервер. Как мне кажется нужно использовать TNMFtp но что-то он не работает у меня(Почему непойму?) Пробовал даже пример с файла справки и он не пашет. Пишет "Host Filed". Индевский вообще како-то непонятный компонент.
echo.Host:="www.microsoft.com";
echo.Connect;
Label1.Caption:=echo.Echo("H");
Label2.Caption:=FloatToStr(echo.ElapsedTime);
Echo.Disconnect;
← →
Карелин Артем (2003-07-08 16:09) [1]Мдя. Что должен показать данный код? Только прежде чем ответить помедитируй над кодом в поисках смысла.
P.S. Скорость=Обьем/время.
← →
Maxim Pshevlotsky (2003-07-08 17:49) [2]Карелин Артем © (08.07.03 16:09)
Хорошо, ну тогда как правильно узнать время. Я делаю вот так:
{Size - Размер файла, возвращает время в сек.}
function TfMain.WhatsTime(Size: Integer): Double;
Var Time: TTimer; Len: Integer;
begin
Time:=TTimer.Create(nil);
Time.Interval:=1; //Поставил 1 хотя минимальный тик=50
Time.OnTimer:=TimeTimer;
Time.Enabled:=True;
ftp.WriteLn("NOOP"); //Посылаю NOOP и засекаю время за сколько
( "NOOP")Карелин Артем © (08.07.03 16:09)
Хорошо, ну тогда как правильно узнать время. Я делаю вот так:
{Size - Размер файла, возвращает время в сек.}
function TfMain.WhatsTime(Size: Integer): Double;
Var Time: TTimer; Len: Integer;
begin
Time:=TTimer.Create(nil);
Time.Interval:=1; //Поставил 1 хотя минимальный тик=50
Time.OnTimer:=TimeTimer;
Time.Enabled:=True;
ftp.WriteLn("NOOP"); //Посылаю NOOP и засекаю время за сколько
//ответит
ftp.WaitFor("NOOP");
Time.Enabled:=false;
Time.Free;
Result:=((MSec)*Size)/1000; //Возвращает в сек. и еще врет на сек. +10!
MSec:=0;
end;
procedure TFMain.TimeTimer(Sender: TObject);
begin
MSec:=MSec+1;
end;
← →
Maxim Pshevlotsky (2003-07-08 18:11) [3]Карелин Артем © (08.07.03 16:09)
ОЙ ЕЛКЛМН ПТЬФУ БЛИН ПАРДОН ОШИБСЯ НЕ TNMFTP а TNMECHO
← →
Donatas (2003-07-09 00:10) [4]а типа математикой заняться? :)
OnPacketRecvd
OnPacketSent
BytesSent: longint;
ы? типа объем/на время поделить :)
← →
Maxim Pshevlotsky (2003-07-09 05:58) [5]Donatas (09.07.03 00:10)
Может я и плохой математик конечно но:
1. Типа в TIDFTP нет НИ таких событий и нет НИ BytesSent
2. Нужно узнать время до того как отправиться на сервер какой-нибудь файл, тоесть не известно НИ скорости НИ времени
Что скажете?
← →
Anatoly Podgoretsky (2003-07-09 10:58) [6]Зато известен размер, количество переданных байт, прошедшее время. Функция из задачника начальной школы.
← →
Карелин Артем (2003-07-09 12:55) [7]Maxim Pshevlotsky © (09.07.03 05:58)
А как насчет событий при отсылки пакетов? Названия не помню, но через них точно делал. А время сам отмерял.
Страницы: 1 вся ветка
Текущий архив: 2003.09.11;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.007 c