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

Как получить информацию из файла с инета   Найти похожие ветки 

 
Виталий09   (2005-10-08 17:40) [0]

Здравствуйте!

Уважаемые мастера, подскажите пожалуйста как можно (на программном уровне) скачать
текстовый фаил с моего интернета-сайта и открыть его в memo

Заранее, спасибо.


 
Zeqfreed ©   (2005-10-08 19:51) [1]

Виталий09   (08.10.05 17:40)
Простейший вариант:


uses WinInet;

function InetGetPage(const Agent, Server, Path : String) : String;
var
hInet, hConnect, hReq : hInternet;
buf : array[1..1024] of Char;
read : Cardinal;
ReadFlag, ReqSent : boolean;

err : boolean;
errcode : Integer;
begin
err := false;

hInet := InternetOpen(PChar(Agent), INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
if hInet <> nil then begin
 hConnect := InternetConnect(hInet, PChar(Server), INTERNET_DEFAULT_HTTP_PORT, nil, nil, INTERNET_SERVICE_HTTP, 0, 0);
 if hConnect <> nil then begin
   hReq := HttpOpenRequest(hConnect, "GET", PChar(Path), HTTP_VERSION, nil, 0, 0, 0);
   if hReq <> nil then begin
    ReqSent := HttpSendRequest(hReq, nil, 0, nil, 0);
    if ReqSent then begin
     repeat
      ReadFlag := InternetReadFile(hReq, @buf, SizeOf(buf), read);
      Result := Result + Copy(buf, 1, read);
     until (not ReadFlag) or (read = 0);
    end else begin
     err := true;
     errcode := GetLastError();
   end;
  end else begin
   err := true;
   errcode := GetLastError();
  end;
 end else begin
  err := true;
  errcode := GetLastError();
 end;
end else begin
 err := true;
 errcode := GetLastError();
end;

if err then begin
 MessageBox(0, PChar("Error #" + IntToStr(errcode) + " has been occured"), "Connection failed", MB_OK or MB_ICONWARNING);
end;

InternetCloseHandle(hReq);
InternetCloseHandle(hConnect);
InternetCloseHandle(hInet);
end;


Пример использования:
Memo1.Text := InetGetPage("123", "www.delphimaster.ru", "http://delphimaster.net/view/2-1128778852/");



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

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



Память: 0.45 MB
Время: 0.024 c
2-1128586322
SQL-nik
2005-10-06 12:12
2005.10.30
Помогите с ADO


14-1128953044
БарЛог
2005-10-10 18:04
2005.10.30
Телевидение через локальную сеть, как?


14-1128674492
shc
2005-10-07 12:41
2005.10.30
Компонент для архивации


1-1128633473
Thor234
2005-10-07 01:17
2005.10.30
Таблица идентификаторов


8-1117729988
sashik
2005-06-02 20:33
2005.10.30
OenGL




   Наверх