asp.net获取访问用户的计算机名称

asp.net获取访问用户的计算机名称,第1张

获取服务器电脑名: Page.Server.ManchineName

获取用户信息: Page.User

获取客户端电脑名:Page.Request.UserHostName

获取客户端电脑IP: Page.Request.UserHostAddress

这里很明显它获取到的是你的DNS服务器计算机

因为你的web服务器和你的客户机都不在同一个网段,

Request.UserHostName肯定是获取不到的。

这个是一个很常见的问题,Request.UserHostName有的时候获取到的还是IP而不是计算机名字。郁闷~~~我也期待高手来回答这个问题。

using System

using System.Collections.Generic

using System.Text

using System.Net

using System.DirectoryServices

namespace Demo

{

public class Demo

{

public Demo() { }

private void GroupInfo()

{

DirectoryEntry MainGroup = new DirectoryEntry("WinNT:")

foreach (DirectoryEntry domain in MainGroup.Children)

{

//this.listView1.Items.Add(domain.Name)此代码获取局域网内的所有机器名

//当局域网内有授权用户是,即TA已经登录成功,获得权限

//System.Net.Dns.GetHostName()获取用户名。

}

}

//通过机器名获取相应IP

private void ComputerInfo(String strname)

{

try

{

DirectoryEntry MainGroup = new DirectoryEntry("WinNT:")

foreach (DirectoryEntry domain in MainGroup.Children)

{

if (domain.Name == strname)

{

foreach (DirectoryEntry pc in domain.Children)

{

IPAddress[] ip = Dns.GetHostAddresses(pc.Name)

//this.listView2.Items.Add(pc.Name + ip[0].ToString())获取IP

}

}

}

}

catch (Exception ex) { MessageBox.Show(ex.Message)}

}

}

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/93743.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-07
下一篇2023-03-07

发表评论

登录后才能评论

评论列表(0条)

    保存