Вниз
Скачать: 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.025 c
2-1128592873
leonidus
2005-10-06 14:01
2005.10.30
ANSI код символа EOF


3-1127033755
Edelweis
2005-09-18 12:55
2005.10.30
Проблема при записи в базу строки с ковычкой


2-1128817720
azard
2005-10-09 04:28
2005.10.30
создание типов данных


2-1128433327
Fidel
2005-10-04 17:42
2005.10.30
Проблема с генератором


4-1124892402
NioBium
2005-08-24 18:06
2005.10.30
TrayIcon без формы




   Наверх