2011-10-02 114 views
3

我改变了我的代码,以便它不再使用deprectaed:Dns.GetHostByAddress()的作品,但Dns.GetHostEntry()不

Dns.GetHostByAddress(ipaddress); 

使用:

Dns.GetHostEntry(ipaddress); 

的问题是我从Dns.GetHostEntry

No such host is known 

SOURCE: System 

TARGETSITE: System.Net.IPHostEntry GetAddrInfo(System.String) 

得到一个例外。如果我回到弃用Dns.GetHostByAddress它正确地从IP查找主机名地址我给它。

我在XP 64bit和Windows 7上看到了这个问题。还没有尝试过其他任何东西。我使用.Net 2.0。

回答

3

我认为问题是Dns.GetHostEntry做了反向查找,而Dns.GetHostByAddress没有。

尝试其他ip地址/主机名,你会看到有时它的工作原理。

我不知道任何解决方案,但也许有。您可以坚持使用过时的功能,直到找到解决方案。

+0

实际上Dns.GetHostByAddress()为我做了反向查找。我给它192.168.0.1,它给了我相应的主机名。 – FunLovinCoder

+0

这不是他的意思,请尝试Dns.GetHostByName()并传递主机名。 –

+0

我不明白你的观点。我想从IP获取主机名,而不是反过来。 – FunLovinCoder

相关问题