下面是我在VS2005写的类获得CPU HD IPADDR 等等信息的,在ASP网页调用这个类!可是得到的都是服务器的信息!请问我怎么等到客户端的这些信息
utpcb 2008-01-03 12:04:48 如题 这是类
using System;
using System.Data;
using System.Configuration;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Management;
using System.Net;
using System.ComponentModel;
using System.Web.Configuration;
using System.Windows.Forms;
using System.Collections.Specialized;
/// <summary>
/// Summary description for Class1
/// </summary>
public class RegisterPC
{
public string Name;
public string Disk;
public string Memory;
public string PCName;
public string IPAddr;
public string MacAddr;
public RegisterPC()
{
Name= GetCpuInfo();
//获取计算机CPU信息
Disk =GetHdInfo();
//获取HD信息
Memory = GetPhisicalMemory().ToString() + "M";
//获取内存大小
//获取计算机名称
PCName = System.Net.Dns.GetHostName();
//获取IP地址
IPAddr = GetIPAddr();
//获取MAC地址
MacAddr = GetMacAddr();
//
// TODO: Add constructor logic here
//
}
private string GetCpuInfo()
{
String MyInfo = "";
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo = MyObject["Name"].ToString().Trim();
}
return MyInfo;
}
private string GetHdInfo()
{
String HDid = "";
ManagementClass cimobject = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach (ManagementObject mo in moc)
{
HDid = (string)mo.Properties["Model"].Value;
}
return HDid;
}
private int GetPhisicalMemory()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher(); //用于查询一些如系统信息的管理对象
searcher.Query = new SelectQuery("Win32_PhysicalMemory", "", new string[] { "Capacity" });//设置查询条件
ManagementObjectCollection collection = searcher.Get(); //获取内存容量
ManagementObjectCollection.ManagementObjectEnumerator em = collection.GetEnumerator();
int capacity = 0;
while (em.MoveNext())
{
ManagementBaseObject baseObj = em.Current;
if (baseObj.Properties["Capacity"].Value != null)
{
try
{
capacity += int.Parse(baseObj.Properties["Capacity"].Value.ToString());
}
catch
{
Console.WriteLine("有错误发生!", "错误信息");
return 0;
}
}
}
return capacity / 1024 / 1024;
}
private string GetIPAddr()
{
string IP = "";
IPAddress[] ips = Dns.GetHostAddresses(System.Net.Dns.GetHostName());
foreach (IPAddress ip in ips)
{
IP = ip.ToString();
}
return IP;
}
private string GetMacAddr()
{
string Mac = "";
ManagementClass mc;
mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if (mo["IPEnabled"].ToString() == "True")
Mac = mo["MacAddress"].ToString();
}
return Mac;
}
}