如何通过使用C#.net传递IP地址来获取设备信息

时间:2015-04-17 04:22:40

标签: c# .net

我有LAN网络中安装的设备的IP地址。我需要通过传递这个IP地址来获取名称,mac地址等设备信息。当我尝试使用以下C#代码获取信息时,它会抛出异常" 不知道这样的主机"。设备可以是打印机/路由器或任何其他设备。

IPHostEntry ip;
ip = Dns.GetHostEntry(ipaddress);
hostName = ip.HostName;

如何解决这个问题。任何想法。

2 个答案:

答案 0 :(得分:2)

当然,如果您想要访问远程计算机,您需要拥有足够的权限,那么您可以使用WMI在目标计算机上运行任何query并获取所需信息。如果您想使用C#

,也可以使用Using WMI with C#

答案 1 :(得分:0)

尝试使用

IPHostEntry ip;
ip = Dns.GetHostAddresses(ipaddress);
hostName = ip.HostName;

关于Dns.GetHostEntry为什么会给出指定错误的原因,我认为这是因为DnsGetHostEntry会在返回IP地址之前尝试进行反向DNS查找。如果反向DNS查找失败,它将为您提供“#34;。

。”

<强>参考

Dns.GetHostEntry error conditions and resolution methods