c#Can';得不到主机名
您好,我使用此代码从连接到同一网络的所有设备获取主机名c#Can';得不到主机名,c#,dns,hostname,C#,Dns,Hostname,您好,我使用此代码从连接到同一网络的所有设备获取主机名 string hostname = string.Empty; string mac = string.Empty; try { IPHostEntry ipEntry = Dns.GetHostEntry(IPAddress.Parse(ip)); if (ipEntry !=
string hostname = string.Empty;
string mac = string.Empty;
try
{
IPHostEntry ipEntry = Dns.GetHostEntry(IPAddress.Parse(ip));
if (ipEntry != null) hostname = ipEntry.HostName;
}catch(SocketException se)
{
hostname = "Unknown Host name !";
}
我使用一个循环来获取从x.x.x.2到x.x.x.254的IP
我从计算机的IP获取主机名
但android、IPhone或WindowsPhone等手机
它抛出了一个SocketException为什么会发生这种情况?
因为当我登录路由器页面并查找设备时
我意识到所有我无法知道他们名字的设备都是手机
很抱歉我的英语不好请发布堆栈跟踪!如何获得该结果?调试/Windows/Call堆栈,或在catch块中打印se.ToString(),并将结果粘贴到此处System.Net.Sockets.SocketException(0x80004005):HôinconuáSystem.Net.Dns.InternalGetHostByAddress(IPAddress address,布尔includeIPv6)áSystem.Net.Dns.GetHostEntry(IPAddress address)áTest.GetDev.PingCompleted(对象发送方,PingCompletedEventArgs e)dans c:\Users\admin\Documents\Visual Studio 2013\Projects\Test\Test\GetDev.cs:ligne 367如果您不懂法语,这意味着未知主机如果主机名未在DNS中注册,GetHostEntry无法为您提供主机名。请发布堆栈跟踪!我如何获得它?Debug/Windows/Call stack,或在catch block print se.ToString()中并将结果粘贴到此处System.Net.Sockets.SocketException(0x80004005):HôinconuêSystem.Net.Dns.InternalGetHostByAddress(IPAddress地址,布尔includeIPv6)ôSystem.Net.Dns.GetHostEntry(IPAddress地址)ôTest.GetDev.PingCompleted(对象发送方,PingCompletedEventArgs e)dans c:\Users\admin\Documents\Visual Studio 2013\Projects\Test\Test\GetDev.cs:ligne 367如果您不懂法语,这意味着未知主机如果主机名未在DNS中注册,则GetHostEntry无法为您提供主机名。