/// <summary>
/// using System.Web;
/// using System.Management;
/// </summary>
public static void main()
{
//客户端ip:
HttpContext.Current.Request.ServerVariables.Get("Remote_Addr").ToString();
//客户端主机名:
HttpContext.Current.Request.ServerVariables.Get("Remote_Host").ToString();
//客户端浏览器IE:
string Browser = HttpContext.Current.Request.Browser.Browser;
//客户端浏览器 版本号:
int MajorVersion = System.Web.HttpContext.Current.Request.Browser.MajorVersion;
//客户端操作系统:
string Platform = System.Web.HttpContext.Current.Request.Browser.Platform;
//服务器ip:
HttpContext.Current.Request.ServerVariables.Get("Local_Addr").ToString();
//端口:
HttpContext.Current.Request.Url.Port.ToString();
//服务器名:
System.Web.HttpContext.Current.Request.ServerVariables.Get("Server_Name").ToString(); //获取网卡的地址、本地的IP地址
string stringMAC = "";
string stringIP = "";
ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC = MC.GetInstances();
foreach (ManagementObject MO in MOC)
{
if ((bool)MO["IPEnabled"] == true)
{
stringMAC += MO["MACAddress"].ToString(); //获取网卡的地址
string[] IPAddresses = (string[])MO["IPAddress"]; //获取本地的IP地址
if (IPAddresses.Length > )
{
stringIP = IPAddresses[];
}
}
}
//获取远程客户端的网卡物理地址(MAC)(本机测试不了)
string MAC = GetMac(HttpContext.Current.Request.UserHostAddress.ToString()); //cpu序列号
string cpuInfo = "";
ManagementClass cimobject = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach (ManagementObject mo in moc)
{
cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
string cpu = "cpu序列号:" + cpuInfo.ToString();
} //获取硬盘ID
String HDid;
ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection moc1 = cimobject1.GetInstances();
foreach (ManagementObject mo in moc1)
{
HDid = (string)mo.Properties["Model"].Value;
string yinpan = "硬盘序列号:" + HDid.ToString();
} //获取网卡硬件地址
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc2 = mc.GetInstances();
foreach (ManagementObject mo in moc2)
{
if ((bool)mo["IPEnabled"] == true)
{
string yinpan = "MAC address/t{0}" + mo["MacAddress"].ToString();
}
mo.Dispose();
}
} /// <summary>
/// 获取远程客户端的网卡物理地址(MAC)
/// using System.Diagnostics;
/// using System.Text.RegularExpressions;
/// </summary>
/// <param name="IP"></param>
/// <returns></returns>
private static string GetMac(string IP) //para IP is the client's IP
{
string dirResults = "";
ProcessStartInfo psi = new ProcessStartInfo();
Process proc = new Process();
psi.FileName = "nbtstat";
psi.RedirectStandardInput = false;
psi.RedirectStandardOutput = true;
psi.Arguments = "-A " + IP;
psi.UseShellExecute = false;
proc = Process.Start(psi);
dirResults = proc.StandardOutput.ReadToEnd();
proc.WaitForExit();
dirResults = dirResults.Replace("/r", "").Replace("/n", "").Replace("/t", ""); Regex reg = new Regex("Mac[ ]{0,}Address[ ]{0,}=[ ]{0,}(?<key>((.)*?))__MAC", RegexOptions.IgnoreCase | RegexOptions.Compiled);
Match mc = reg.Match(dirResults + "__MAC"); if (mc.Success)
{
return mc.Groups["key"].Value;
}
else
{
reg = new Regex("Host not found", RegexOptions.IgnoreCase | RegexOptions.Compiled);
mc = reg.Match(dirResults);
if (mc.Success)
{
return "Host not found!";
}
else
{
return "";
}
}
}

最新文章

  1. sqlyog不用密码登陆(强制取消)
  2. Framework/base 下添加自定义模块的步骤
  3. Swift URL Schemes使用
  4. 替换APK中的jar包文件
  5. 初识CentOS服务命令大全
  6. UVa 11054 Wine trading in Gergovia
  7. [codevs2152]滑雪
  8. PYTHON线程知识再研习D---可重入锁
  9. JQuery 插件之Ajax Autocomplete(ajax自动完成)
  10. Ubuntu--有关VMware Tools安装问题
  11. DP 动态规划
  12. Java 垃圾回收算法
  13. NHibernate教程(21)——二级缓存(下)
  14. UNIX DOMAIN SOCKET效率
  15. [转]sqlldr 导入乱码,Oracle客户端字符集问题
  16. 20175234 数据库MySQL(课下作业)
  17. JQuery学习二-字典操作
  18. js window.location用法
  19. 集合(5)—Map之HashMap()
  20. C#利用反射动态调用DLL并返回结果,和获取程序集的信息

热门文章

  1. 错误: 找不到或无法加载主类 scala.tools.nsc.MainGenericRunner
  2. Unity3d 项目管理 版本管理
  3. Qt学习 之 Socket通信(世界上最简单的例子了)
  4. 【HDOJ】2266 How Many Equations Can You Find
  5. linux setsockopt
  6. 互联网组织的未来:剖析GitHub员工的任性之源
  7. POJ Countries in War 3114
  8. 树状数组(二维):COGS 1532 [IOI2001]移动电话
  9. Servlet工作原理
  10. powershel连接数据库监控数据库状态并发报警邮件