给段程序给你看看解析IP地址为主机域名。使用 WinSock 单元;
过程如下:
  function IPAddrToName(IPAddr : String): String;
  var
    SockAddrIn: TSockAddrIn;
    HostEnt: PHostEnt;
    WSAData: TWSAData;
  begin
    WSAStartup($101, WSAData);
    SockAddrIn.sin_addr.s_addr:= inet_addr(PChar(IPAddr));
    HostEnt:= gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
    if HostEnt<>nil then
    begin
      result:=StrPas(Hostent^.h_name)
    end
    else
    begin
      result:='';
    end;
  end;
测试时请在在线状态。测试代码:
var
  Name: string;
begin
  Name := InputBox('输入对方主机IP', '主机IP地址:', '');
  showmessage(IpAddrToName(Name));end;
//uses winsock; 通过IP地址得到机器名 
function  iptoname(ip:string):string; 
var 
   WSAData:TWSAData; 
   p:PHostEnt; 
   InetAddr:dword; 
begin 
   result:=''''; 
   WSAStartup(2,  WSAData); 
   InetAddr:=  inet_addr(PChar(IP)); 
   try 
   p:=GetHostByAddr(@InetAddr,  Length(IP),  PF_Inet); 
   if p<> nil then result:=p^.h_name; 
   except 
     result:=''''; 
   end; 
end;