Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用jQuery、JavaScript或服务器端代码获取客户端(用户)计算机名(计算机名)。(审查可能的方式)_C#_Asp.net_Visual Studio 2010_Client_Ip Address - Fatal编程技术网

C# 如何使用jQuery、JavaScript或服务器端代码获取客户端(用户)计算机名(计算机名)。(审查可能的方式)

C# 如何使用jQuery、JavaScript或服务器端代码获取客户端(用户)计算机名(计算机名)。(审查可能的方式),c#,asp.net,visual-studio-2010,client,ip-address,C#,Asp.net,Visual Studio 2010,Client,Ip Address,几天来,我一直在互联网上(而不是在本地网络上)检索IP地址和客户机名称 因此,我找到了一些获取IP地址的方法,但找不到获取客户端计算机名或收集有关我的网站用户的信息的方法? 我知道关于这个问题有很多重复的帖子,但是很多都是旧的或者不起作用。 下面的服务器端代码返回服务器名称而不是客户端计算机名称 string UserHost_ComputerName4 = Dns.GetHostName();//Server Name string UserHost_ComputerName5 = Envir

几天来,我一直在互联网上(而不是在本地网络上)检索IP地址和客户机名称
因此,我找到了一些获取IP地址的方法,但找不到获取客户端计算机名或收集有关我的网站用户的信息的方法?
我知道关于这个问题有很多重复的帖子,但是很多都是旧的或者不起作用。
下面的服务器端代码返回服务器名称而不是客户端计算机名称

string UserHost_ComputerName4 = Dns.GetHostName();//Server Name
string UserHost_ComputerName5 = Environment.MachineName;//Server Name  
下面的行在用户端有错误,但它在运行的服务器端页面上工作:

 string UserHost_ComputerName3 = Dns.GetHostEntry(Request.ServerVariables["REMOTE_ADDR"]).HostName.ToString();//Has Error

您能告诉我一种可能且可行的方法(JavaScript或jQuery或服务器端)来获取客户端(访问我网站的用户)的计算机名吗?

不完全确定所有方法,但可以通过ActiveX实现,这可能是个问题,因为它只在某些浏览器中起作用。我不相信有一种方法可以用纯javascript实现,服务器端也不可能,因为服务器无法访问其连接客户端的此类详细信息。

据我所知,为了获得:

  • Request.ServerVariables[“REMOTE\u ADDR”]
  • Request.ServerVariables[“远程主机”]
  • Request.ServerVariables[“远程用户”]
您必须为您的IIS启用
反向DNS查找

p、 美国。 atm我自己无法测试,所以我不确定这是否能解决您的问题

试试这个:

string PCName = Dns.GetHostEntry(Request.ServerVariables["REMOTE_ADDR"]).HostName;
但若你们想知道主机的名字

string HostPCName = Dns.GetHostName();

感谢您的评论:但是请求。ServerVariables[“REMOTE\u ADDR”]在iis和请求中没有任何更改。ServerVariables[“REMOTE\u HOST”]返回一个奇妙的字符串,以babylon开头…@LostLord您是否从实际运行iis的机器向页面发出请求?换句话说,您是否正在向本地主机发出请求?如果是这样,这也许可以解释这种行为。若并没有,你们能指定在用户端有什么样的错误吗?首先,我更正我的第一条评论(感谢你们的回答)——我可以远程访问我的服务器,我可以在服务器或本地测试网页!该服务器使用windows server 2008和最新的iis版本(由我自己安装)——在该服务器中配置iis和dns后,当您在服务器浏览器中运行该页面时,一切正常(但不正常-我们仍然没有用户的机器名)/当我用我的个人电脑浏览它时,我们会因为那条线而出错——但是记住这个错误不能告诉你任何事情,因为它在用户端!你是对的/但为什么很多人说这些代码对他们有用/我在vb中找到了一个使用activeX的脚本/但它只在IE上有效。。。然而,我对这个问题感到困惑/