繁体   English   中英

Dns.GetHostEntry在Windows Mobile上返回错误的IP地址

[英]Dns.GetHostEntry returns wrong IP addresses on Windows Mobile

这是在使用Compact Framework通过USB连接到我的计算机的手持设备上:

当我调用Dns.GetHostEntry(“”)或Dns.GetHostEntry(IPAddress.Loopback)来获取掌上电脑的IP地址时,我得到了我的主机的IP地址。 但是当我从手持设备向我的计算机发送数据包时,它们来自不同的地址。

有没有办法阻止它这样做? 将通过P / Invoke直接调用DLL修复它吗?

手持设备未通过WiFi或蓝牙连接。 唯一的连接是通过USB。

当你调用Dns.GetHostEntry(“”)时,我认为你会在127.0.0.1的IPHostEntry.AddressList中找回一个条目(事实上,这就是快速测试所显示的)。 Dns.GetHostEntry(IPAddress.Loopback)返回两个条目:127.0.0.1和:: 1。

也没有返回主机PC的IP地址,也不应该返回设备的IP地址。 如果您需要设备的IP地址,请使用以下内容:

IPHostEntry hostent = Dns.GetHostEntry(Dns.GetHostName());

foreach (var addr in hostent.AddressList)
{
    Debug.WriteLine(addr.ToString());
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM