Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: 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 вся ветка

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
1-1078922448
From_X
2004-03-10 15:40
2004.03.28
Как найти путь, куда была установлена программа?


1-1078585143
Alexey_
2004-03-06 17:59
2004.03.28
Увеличение размеров Hint у иконки в Трей е


14-1078095935
Ske4er
2004-03-01 02:05
2004.03.28
Знаю, что ...


1-1078953556
Miwa
2004-03-11 00:19
2004.03.28
Размер файла я узнаю таким вот способом:


14-1077905625
Style
2004-02-27 21:13
2004.03.28
Людии помогите! Есть форма на ней две панельки?