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

Как определить работоспособность URL-ссылки?   Найти похожие ветки 

 
kofman ©   (2002-08-11 00:33) [0]

Уважаемые Мастера, подскажите пожалуйста, как быстро определить работоспособнось URL-ссылки? И если возможно с учетом того что сервер при обращении к нему может вообще не ответить, т.е. предусмотреть таймаут после которого однозначно понятно что ссылка не работает.


 
int64 ©   (2002-08-11 16:32) [1]

Ты должен быть онлайн, чтобы функция работала.

uses wininet;

Function CheckUrl(url:string):boolean;
var
hSession, hfile, hRequest: hInternet;
dwindex,dwcodelen :dword;
dwcode:array[1..20] of char;
res : pchar;
begin
if pos("http://",lowercase(url))=0 then
url := "http://"+url;
Result := false;
hSession := InternetOpen("InetURL:/1.0",
INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
if assigned(hsession) then
begin
hfile := InternetOpenUrl(
hsession,
pchar(url),
nil,
0,
INTERNET_FLAG_RELOAD,
0);
dwIndex := 0;
dwCodeLen := 10;
HttpQueryInfo(hfile, HTTP_QUERY_STATUS_CODE,
@dwcode, dwcodeLen, dwIndex);
res := pchar(@dwcode);
result:= (res ="200") or (res ="302");
if assigned(hfile) then
InternetCloseHandle(hfile);
InternetCloseHandle(hsession);
end;

end;


Дерзай.


 
kofman ©   (2002-08-11 21:53) [2]

int64 - спасибо что откликнулся. И за код спасибо, но вот незадача, если сервер не отвечает, то твоя фунция будет долбить его до бесконечности, а как ограничить время тамаута?



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

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



Память: 0.45 MB
Время: 0.01 c
4-32070
DanIQ
2002-08-26 07:02
2002.10.10
Управление монитором


3-31660
BIN
2002-09-20 11:44
2002.10.10
Вставка строки


14-31990
UDS
2002-09-05 19:34
2002.10.10
ВЗЛОМАТЬ BIOS !!!!


1-31800
k
2002-10-01 17:19
2002.10.10
bb


1-31691
koks
2002-09-30 14:40
2002.10.10
Разделители в ExpressBars




   Наверх