Вниз
Скачать: CL | DM;

<b>Получить html-файл с удаленного сервера</b>   Найти похожие ветки 

 
Игорь   (2004-01-19 19:39) [0]

Вопрос такой. Как получить html-файл с удаленного сервера по заданному URL и сохранить его у себя на диске, не прибегая к использованию TWebBrawser? Заранее огромное спасибо.


 
easy ©   (2004-01-20 16:25) [1]

uses wininet;

...

function DownloadFile(const Url: string): string;
var
 NetHandle: HINTERNET;
 UrlHandle: HINTERNET;
 Buffer: array[0..1024] of char;
 BytesRead: cardinal;
begin
 Result := "";
 NetHandle := InternetOpen("Delphi 5.x", INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);

 if Assigned(NetHandle) then
 begin

   UrlHandle := InternetOpenUrl(NetHandle, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD, 0);

   { UrlHandle правильный? Начинаем загрузку }
   if Assigned(UrlHandle) then
   begin
     FillChar(Buffer, SizeOf(Buffer), 0);
     repeat
       Result := Result + Buffer;
       FillChar(Buffer, SizeOf(Buffer), 0);
       InternetReadFile(UrlHandle, @Buffer, SizeOf(Buffer), BytesRead);
     until
       BytesRead = 0;
     InternetCloseHandle(UrlHandle);
   end
   else
   begin
     { UrlHandle неправильный. Генерируем исключительную ситуацию. }
     raise Exception.CreateFmt("Cannot open URL %s", [Url]);
   end;

   InternetCloseHandle(NetHandle);
 end
 else
   { NetHandle недопустимый. Генерируем исключительную ситуацию }
   raise Exception.Create("Unable to initialize Wininet");
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
14-1078036776
Alexandra
2004-02-29 09:39
2004.03.28
Не в тему, но все же нужна помощь?


4-1074052375
Sirus
2004-01-14 06:52
2004.03.28
Нужно событие типа AfterClose формы...


1-1078385298
Юкс
2004-03-04 10:28
2004.03.28
Создание интерпретатора


1-1078909890
MadGhost
2004-03-10 12:11
2004.03.28
как в функцию передать переменную по ссылке?


1-1078405307
Demon_mhm
2004-03-04 16:01
2004.03.28
Конструктор класса, запуск с параметрами и без




   Наверх