Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Скачка файла с интернета


Страницы:   1 2

Dr.Nemo ©   (2005-08-26 15:00:00) 

Добрый день колеги у меня сложился вот такой вопрос
вот листинг моей программы:

program Project3;
uses
wininet;
function HttpDownloadFile(URL, FileName: string): boolean;
const
BufferSize = 1024;
var
hSession, hURL: HInternet;
Buffer: array[1..BufferSize] of Byte;
BufferLen: longword;
f: file;
sAppName: string;
begin
Result := False;
//sAppName := 'MyProgram';
hSession := InternetOpen(PChar(sAppName),
INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
hURL := InternetOpenURL(hSession, PChar(URL), nil, 0, 0, 0);
try
AssignFile(f, FileName);
Rewrite(f,1);
repeat
InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
BlockWrite(f, Buffer, BufferLen);
until
BufferLen = 0;
CloseFile(f);
Result := True;
finally
InternetCloseHandle(hURL);
end;
finally
InternetCloseHandle(hSession);
end;
end;
var FileOnNet, LocalFileName: string;
begin
  FileOnNet:=' http://localhost/1.exe';
  LocalFileName:='1.exe';

  if HttpDownloadFile(FileOnNet,LocalFileName)=True
then
     /////////////////
else
   ////////////////////
end.
как в ету функцию вставить цикл
который например через каждые 5 минут
запускал скачку файла с интернета и если скачка прошла успешно то цикл останавливался
помогите пожалуйста а то у меня время поджимает!!
если можно то дайте примерчик или вышлите на smirnof@ua.fm


Плохиш   (2005-08-26 15:33:00) [21]

TTimer к примеру


Dr.Nemo   (2005-08-26 15:18:00) [22]

А всё таки как её зациклить с интервалом во времени?


Digitman   (2005-08-26 15:12:00) [23]


> как в ету функцию вставить цикл


функцию сначала довести до ума нужно, а уж потом про "циклы" рассуждать.

until BufferLen = 0;
..
Result := True;

с чего ты взял, что истинность условия BufferLen = 0 есть повод для принятия решения об УСПЕШНОМ "скачивании" файла ?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо