c# 获取电脑硬件信息通用查询类[测试通过]

xiaoxiao2021-02-28  17

C#获取电脑硬件信息通用类[Computer]代码展示和分析,简介如下:

1.项目中添加System.Management引用。

2.添加类Computer,把下面代码全选,复制,粘贴。

3.使用方法new Computer().GetComputerName()。

 

代码 using System; using System.Management; // 添加System.Management引用 public class Computer{ public string CpuID; public string MacAddress; public string DiskID; public string IpAddress; public string LoginUserName; public string ComputerName; public string SystemType; public string TotalPhysicalMemory; // 单位:M private static Computer _instance; public static Computer Instance() { if (_instance == null ) _instance = new Computer(); return _instance; } /// <summary> /// 构造函数 /// </summary> public Computer() { CpuID = GetCpuID(); MacAddress = GetMacAddress(); DiskID = GetDiskID(); IpAddress = GetIPAddress(); LoginUserName = GetUserName(); SystemType = GetSystemType(); TotalPhysicalMemory = GetTotalPhysicalMemory(); ComputerName = GetComputerName(); } /// <summary> /// 获取cpu序列号 /// </summary> /// <returns></returns> public string GetCpuID() { try { // 获取CPU序列号代码 string cpuInfo = "" ; // cpu序列号 ManagementClass mc = new ManagementClass( " Win32_Processor " ); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { cpuInfo = mo.Properties[ " ProcessorId " ].Value.ToString(); } moc = null ; mc = null ; return cpuInfo; } catch { return " unknow " ; } } /// <summary> /// 获取网卡硬件地址 /// </summary> /// <returns></returns> public string GetMacAddress() { try { // 获取网卡硬件地址 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; } catch { return " unknow " ; } } /// <summary> /// 获取IP地址 /// </summary> /// <returns></returns> public string GetIPAddress() { try { // 获取IP地址 string st = "" ; ManagementClass mc = new ManagementClass( " Win32_NetworkAdapterConfiguration " ); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { if (( bool )mo[ " IPEnabled " ] == true ) { // st=mo["IpAddress"].ToString(); System.Array ar; ar = (System.Array)(mo.Properties[ " IpAddress " ].Value); st = ar.GetValue( 0 ).ToString(); break ; } } moc = null ; mc = null ; return st; } catch { return " unknow " ; } } /// <summary> /// 获取硬盘ID /// </summary> /// <returns></returns> public string GetDiskID() { try { // 获取硬盘ID String HDid = "" ; ManagementClass mc = new ManagementClass( " Win32_DiskDrive " ); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { HDid = ( string )mo.Properties[ " Model " ].Value; } moc = null ; mc = null ; return HDid; } catch { return " unknow " ; } } /// <summary> /// 操作系统的登录用户名 /// </summary> /// <returns></returns> public string GetUserName() { try { 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; } catch { return " unknow " ; } } /// <summary> /// PC类型 /// </summary> /// <returns></returns> public string GetSystemType() { try { 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; } catch { return " unknow " ; } } /// <summary> /// 物理内存 /// </summary> /// <returns></returns> public string GetTotalPhysicalMemory() { try { string st = "" ; ManagementClass mc = new ManagementClass( " Win32_ComputerSystem " ); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { st = mo[ " TotalPhysicalMemory " ].ToString(); } moc = null ; mc = null ; return st; } catch { return " unknow " ; } } /// <summary> /// 电脑名称 /// </summary> /// <returns></returns> public string GetComputerName() { try { return System.Environment.GetEnvironmentVariable( " ComputerName " ); } catch { return " unknow " ; } }}

 

转载请注明原文地址: https://www.6miu.com/read-2350324.html

最新回复(0)