如何在Windows Phone上使用IP地址解析主机/机器名称

时间:2013-11-07 12:52:08

标签: c# networking windows-phone-8 dns windows-phone

任何人都知道它是否可以使用本地IP地址恢复(主机名/机器名)?我知道该决议反向'主机名 - > ip'与DeviceNetworkInformation.ResolveHostNameAsync (endpoint, OnNameResolved, null).

完美配合

是否有可能做同样的事情,但相反?给定本地计算机的IP并检索其主机名?万分感谢

这是我的代码,但它无效,主机总是被称为“192.168.1.5”,就像ip一样。它应该返回“computer0001”

DeviceNetworkInformation.ResolveHostNameAsync("192.168.1.5", OnNameResolved, null);

private void OnNameResolved(NameResolutionResult result)
{
     IPEndPoint[] endpoints = result.IPEndPoints;
     if (endpoints != null)
     {
         if (endpoints.Length > 0)
         {
             //Host always return ip adress and not the machine name
             host = endpoints[0].ToString();
         }
     }
 }

1 个答案:

答案 0 :(得分:0)

不确定Windows Phone上是否有特定的API用于此目的。

我建议您调查similar question 'DNS lookup from custom DNS server in c#'

如果您只使用WP8,那么您应该研究MSDN的这一部分 - Supported Win32 APIs for Windows Phone 8

例如,getpeername function可能会返回您正在寻找的信息。或者您可以在那里创建新的HostName对象传递IP地址并尝试读取它的DisplayName,CanonicalName或RawName属性。

确保使用仿真器和真实设备进行测试,因为WP8仿真器的网络配置有点复杂。

如果您在任务中取得任何成功,可以更新我们,那将会很棒。