delphi中IP地址如何转换成32位整形啊 ( 积分: 50 )

  • 主题发起人 主题发起人 DJ6674
  • 开始时间 开始时间
D

DJ6674

Unregistered / Unconfirmed
GUEST, unregistred user!
有直接的函数吗?还是要自己写?
 
inet_addr(PChar(IP))
 
呵呵,查函数手册
 
我只是要把IP地址转成整形,不是inet_addr。
inet_addr转成整形后,还是把次序倒过来的。
 
function GetLocalIP: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;
begin
WSAStartup($101, GInitData);
Result := '';
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then
Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^ <> nildo
begin
result:=StrPas(inet_ntoa(pptr^^));
Inc(I);
end;
WSACleanup;
end;
 
接受答案了.
 

Similar threads

后退
顶部