我这正好有写好的函数。
检查一个url是否有效
uses wininet;
function checkurl(url:string):boolean; //检查一个url是否有效函数
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'); //200,302未重定位标志
if assigned(hfile) then
internetclosehandle(hfile);
internetclosehandle(hsession);
end;
end;