请问如何用delphi或bcb实现域名与ip之间的相互解析?(60分)

  • 主题发起人 主题发起人 jet
  • 开始时间 开始时间
J

jet

Unregistered / Unconfirmed
GUEST, unregistred user!
就象tpz大虾的freeip一样,输入域名就可得到ip,反之也一样。
是否要用socket?
 
使用ics的ping构件就可以!
Ping1.DnsLookup(HostEdit.Text);
 
利用WINSOCK函数:
gethostbyaddr 与gethostbyname
 
cytown: 如果不另用构件,还有别的方法吗?我也想了解一点“内幕”嘛!
liukeen: 能否具体点?
先谢过各位大虾了!
 
gethostbyaddr 根据IP地址返回主机信息
struct HOSTENT FAR * gethostbyaddr (
const char FAR * addr,
int len,
int type
);

addr [in] A pointer to an address in network byte order.
len [in] The length of the address.
type [in] The type of the address.
gethostbyname 根据主机名返回主机信息
struct hostent FAR * gethostbyname ( const char FAR * name );
hostent 主机信息类型说明
struct hostent {
char FAR * h_name;
char FAR * FAR * h_aliases;
short h_addrtype;
short h_length;
char FAR * FAR * h_addr_list;
};

h_name 主机名
h_aliases 别名(数组)
h_addrtype 地址类型
h_length 地址长度
h_addr_list 地址列表

 
必须use winsock;
gethostbyaddr 根据IP地址返回主机信息
struct HOSTENT FAR * gethostbyaddr (
const char FAR * addr,
int len,
int type
);

addr [in] A pointer to an address in network byte order.
len [in] The length of the address.
type [in] The type of the address.
gethostbyname 根据主机名返回主机信息
struct hostent FAR * gethostbyname ( const char FAR * name );
hostent 主机信息类型说明
struct hostent {
char FAR * h_name;
char FAR * FAR * h_aliases;
short h_addrtype;
short h_length;
char FAR * FAR * h_addr_list;
};

h_name 主机名
h_aliases 别名(数组)
h_addrtype 地址类型
h_length 地址长度
h_addr_list 地址列表

怎么样,够详细的吧.
 
Wuu, 以前的问题造就回答得很清楚了,
检索一下吧?
 
我代jet 谢谢cytown,
cytown,找本WINSOCK编程的书看一下!
 
后退
顶部