您的位置:首页 > 理论基础

C#读取计算机硬件信息

2012-04-06 20:35 417 查看
1.C# 读取CPU、硬盘序列号

添加using System.Management;
 public String GetCPUID()
        {
            try
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");//SELECT * FROM Win32_DiskDrive");
                String strCPUID = "";
                foreach (ManagementObject mo in searcher.Get())
                {
                    strCPUID = (string)mo["ProcessorId"];//mo["signature"].ToString().Trim();
                    break;
                }
                return strCPUID;
            }
            catch
            {
                return "读取CPU序列号失败!";
            }
        }
  public String GetHardDiskID()
        {
            try
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
                String strHardDiskID = "";
                foreach (ManagementObject mo in searcher.Get())
                {
                    strHardDiskID = mo["signature"].ToString().Trim();//signature,PNPDeviceID
                    break;
                }
                return strHardDiskID;
            }
            catch
            {
                return "读取硬盘序列号失败!";
            }
        }
    }
}
2.C#获取客户端及服务器端主机信息的方法

客户端ip:Request.ServerVariables.Get("Remote_Addr").ToString();

客户端主机名:Request.ServerVariables.Get("Remote_Host").ToString();

客户端浏览器IE:Request.Browser.Browser;

客户端浏览器 版本号:Request.Browser.MajorVersion;//

客户端操作系统:Request.Browser.Platform;

服务器ip:Request.ServerVariables.Get("Local_Addr").ToString();

服务器名:Request.ServerVariables.Get("Server_Name").ToString();

如果你想进一步了解ServerVariables,可以用foreach(String o in Request.ServerVariables){Response.Write(o+"="+Request.ServerVariables[o]+"<br>");}

3.读取计算机的MAC及IP地址和操作系统的登录用户名 

 public static string GetMacAddress(){

           string mac = "";

           ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");

           ManagementObjectCollection moc = mc.GetInstances();

           foreach (ManagementObject mo in moc)

           {

              if ((bool)mo["IPEnabled"] == true)

              {

                 mac = mo["MacAddress"].ToString();

                 break;

               }

           }

           moc = null;

           mc = null;

           return mac;

        }

 public static string GetMacAddress(){

           string mac = "";

           ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");

           ManagementObjectCollection moc = mc.GetInstances();

           foreach (ManagementObject mo in moc)

           {

              if ((bool)mo["IPEnabled"] == true)

              {

                 mac = mo["MacAddress"].ToString();

                 break;

               }

           }

           moc = null;

           mc = null;

           return mac;

        }

 public static string GetUserName() {

            string st = "";

            ManagementClass mc = new ManagementClass("Win32_ComputerSystem");

            ManagementObjectCollection moc = mc.GetInstances();

            foreach (ManagementObject mo in moc)

            {

                st = mo["UserName"].ToString();

            }

            moc = null;

            mc = null;

            return st;

        }

4.读取计算机的系统类型及计算机名

 public static string GetSystemType() {

           string st = "";

           ManagementClass mc = new ManagementClass("Win32_ComputerSystem");

           ManagementObjectCollection moc = mc.GetInstances();

           foreach (ManagementObject mo in moc)

           {

             st = mo["SystemType"].ToString();

           }

           moc = null;

           mc = null;

          return st;

        }

 public static string GetComputerName(){

       return System.Environment.GetEnvironmentVariable("ComputerName");}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息