02.03.2009, 15:49
|
Прохожий
|
|
Регистрация: 27.02.2009
Сообщения: 5
Репутация: 10
|
|
я разобрался. вот код для тех кто тоже озаботится:
Код:
Function DownLoad(_LinkLoad, _SaveWay: string) : Boolean ;
var F: File;
// ResumePos : DWORD;
BufferLen,SumSize: DWORD;
hSession, hURL: HInternet;
Buffer: array[1..1024] of Byte;
err: boolean;
begin
SumSize:=0;
// ResumePos:=0; //Инициализируемся
AssignFile (F,_SaveWay); //Свяжемся с файлом
ReWrite(f,1); // создадим
//Открыли сессию
hSession:= InternetOpen('X-Kachalka',INTERNET_OPEN_TYPE_PRECONFIG,nil,nil,0);
//И наш УРЛ
hURL := InternetOpenURL(hSession,PChar(_LinkLoad),nil,0,INTERNET_FLAG_RELOAD,0);
// InternetQueryDataAvailable(hURL, SumSize,0,0);
// labe4.Caption := IntToStr(SumSize);
try
REPEAT //Качаем
InternetReadFile(hURL, @Buffer,SizeOf(Buffer),BufferLen); //Читаем буфер
BlockWrite(f, Buffer, BufferLen); //Пишем в файл
Application. Processmessages; //
UNTIL BufferLen= 0;
Result := true;
except
Result := false;
end;
InternetCloseHandle(hURL);
Closefile(f);
InternetCloseHandle(hSession);
// закрываемся. иначе идёт утечка памяти
end;
каждый раз качает файл поновой. кэш отключён
|