2

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

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

这是我的代码,但它不起作用主机总是像 ip 一样被称为“192.168.1.5” 。它应该返回“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();
         }
     }
 }
4

1 回答 1

0

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

我建议您查看类似的问题 'DNS lookup from custom DNS server in c#'

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

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

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

如果您对任务有任何成功,如果您能更新我们,那就太好了。

于 2013-12-23T22:12:13.553 回答