ITPub博客

首页 > IT基础架构 > 网络安全 > 将某一主机域名解析为IP地址。 (转)

将某一主机域名解析为IP地址。 (转)

原创 网络安全 作者:worldblog 时间:2007-12-04 16:02:49 0 删除 编辑
将某一主机域名解析为IP地址。 (转)[@more@]


将某一主机域名解析为IP地址
使用 WinSock 单元;
过程如下:
function HostToIP(Name: string; var Ip: string): Boolean;
var
  wsdata : TWSAData;
  hostName : array [0..255] of char;
  hostEnt : PHostEnt;
  addr : PChar;
begin
  WSAStartup ($0101, wsdata);
  try
  gethostname (hostName, sizeof (hostName));
  StrPCopy(hostName, Name);
  hostEnt := gethostbyname (hostName);
  if Assigned (hostEnt) then
  if Assigned (hostEnt^.h_addr_list) then begin
  addr := hostEnt^.h_addr_list^;
  if Assigned (addr) then begin
  ip := Format ('%d.%d.%d.%d', [byte (addr [0]),
  byte (addr [1]), byte (addr [2]), byte (addr [3])]);
  Result := True;
  end
  else
  Result := False;
  end
  else
  Result := False
  else begin
  Result := False;
  end;
  finally
  WSACleanup;
  end
end;

 

测试时请在在线状态。

测试代码:
var
IP: string;
dns: string;
begin
  DNS := InputBox('输入DNS域名', '主机名称:', '');
  if HostToIp(DNS, IP) then showmessage(IP);
end;
作者:Latfi Baran

 


 


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-988452/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    6241
  • 访问量
    2449818