使用TIdHTTP控件 在Indy Clients页面var ip:string;begin Ip := IdHTTP1.Get('http://www.bliao.com:2000/ip.phtml'); ShowMessage(Ip); end;
function getip():string; type TaPInAddr = Array[0..10] of PInAddr; PaPInAddr = ^TaPInAddr; var phe: PHostEnt; pptr: PaPInAddr; Buffer: Array[0..63] of Char; I: Integer; GInitData: TWSAData; IP: String; begin try WSAStartup($101, GInitData); IP:='0.0.0.0'; GetHostName(Buffer, SizeOf(Buffer)); phe := GetHostByName(buffer); if phe = nil then begin ShowMessage(IP); Exit; end; pPtr := PaPInAddr(phe^.h_addr_list); I := 0; while pPtr^[I] <> nil do begin IP := inet_ntoa(pptr^[I]^); Inc(I); end; WSACleanup; getip:=ip; ShowMessage(IP);//如果上网则为上网ip否则是网卡ip finally end; end;
ip:string;begin
Ip := IdHTTP1.Get('http://www.bliao.com:2000/ip.phtml');
ShowMessage(Ip);
end;
type
TaPInAddr = Array[0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
Buffer: Array[0..63] of Char;
I: Integer;
GInitData: TWSAData;
IP: String;
begin
try
WSAStartup($101, GInitData);
IP:='0.0.0.0';
GetHostName(Buffer, SizeOf(Buffer));
phe := GetHostByName(buffer);
if phe = nil then
begin
ShowMessage(IP);
Exit;
end;
pPtr := PaPInAddr(phe^.h_addr_list);
I := 0;
while pPtr^[I] <> nil do
begin
IP := inet_ntoa(pptr^[I]^);
Inc(I);
end;
WSACleanup;
getip:=ip;
ShowMessage(IP);//如果上网则为上网ip否则是网卡ip
finally
end;
end;