我的代码如下:
IPHostEntry GetIPHost = Dns.GetHostEntry(userIP);
List<string> compName = GetIPHost.HostName.ToString().Split('.').ToList();
string computerName = compName.First();
同网段可以获取到,到跨网段就不行了,有跨网段的方法吗?
没有
除非别人主动告诉你
如果你只知道IP的话,是没有办法主动知道别人名字
1、如果用户是ie浏览器 ,编写ActiveX可以实现获取当前用户机器的信息(包括电脑名)。
2、如果不是ie浏览器或者没有能力编写对应的ActiveX,则可以使用任意Native平台编写程序,获取本地机器信息然后以http服务的方式http://localhost:10000/sysinfo提供给你的网页,你的网页通过ajax调用该服务取得机器信息,然后发给你的服务器。
一句话,你必须在客户端安装程序才行