
16.11.2008, 22:43
|
Начинающий
|
|
Регистрация: 24.01.2007
Сообщения: 191
Репутация: 15
|
|
у тебя буфер равен 1024 байтов 1 КБ воемя за которое он закачет 1 кб за секунду сколько он КБ закачает такова и скорость
Вот получение размера файла
Код:
function THttpGet.getResourceSize(const AURL: String): Integer;
var
hOpen, hConnect, hResource: HINTERNET;
host, resource: string;
buflen, tmp: DWORD;
begin
hOpen := nil;
hConnect := nil;
hResource := nil;
try
ParseURL(AURL, host, resource);
if not fError then begin
hOpen := InternetOpen(fUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
CheckError;
if not fError then
hConnect := InternetConnect(hOpen, PChar(host), INTERNET_DEFAULT_HTTP_PORT, nil, nil, INTERNET_SERVICE_HTTP, 0, 0);
CheckError;
if not fError then
hResource := HttpOpenRequest(hConnect, 'HEAD', PChar(resource), nil, nil, nil, 0, 0);
CheckError;
if not fError then
HttpSendRequest(hResource, nil, 0, nil, 0);
CheckError;
end;
if not fError then begin
buflen := SizeOf(Result);
tmp := 0;
Result := 0;
HttpQueryInfo(hResource, HTTP_QUERY_CONTENT_LENGTH or HTTP_QUERY_FLAG_NUMBER,
@Result, buflen, tmp);
CheckError;
end else
Result := 0;
InternetCloseHandle(hConnect);
InternetCloseHandle(hOpen);
except
on E: Exception do
ShowMessage(E.Message);
end;
end;
Это я выдрал из своего класса, много у тебя нет, но основно смысл должен быть понять.
__________________
Delphi - это лишь инструмент, а что ты сможешь создать при помощи этого инструмента, зависит исключительно от тебя.
|