添加引用:using System.Management;
实现代码:
class HardWareInfo { /// <summary> /// 获取 CPUID , 更多 cpu 信息参考 /// </summary> /// <returns> cpuid </returns> public static string GetCpuId() { string cpuid = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_Processor"); foreach (ManagementObject mo in searcher.Get()) { cpuid = mo.Properties["ProcessorId"].Value.ToString(); break; } } catch { } return cpuid; } /// <summary> /// 获取硬盘序列号 /// </summary> /// <returns> 硬盘序列号 </returns> public static string GetDiskSerialNumber() { string HDid = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_DiskDrive"); foreach (ManagementObject mo in searcher.Get()) { HDid = (string)mo.Properties["SerialNumber"].Value; break; } } catch { } return HDid; } /// <summary> /// 获取硬盘产品型号 /// </summary> /// <returns>硬盘产品型号</returns> public static string GetDiskModelNumber() { string HDid = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_DiskDrive"); foreach (ManagementObject mo in searcher.Get()) { HDid = (string)mo.Properties["Model"].Value; break; } } catch { } return HDid; } /// <summary> /// 获取 Mac 地址 ,更多网卡信息参考 : /// </summary> /// <returns> Mac 地址 </returns> public static string GetMacAddress() { string mac = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_NetworkAdapterConfiguration"); foreach (ManagementObject mo in searcher.Get()) { if ((bool)mo["IPEnabled"] == true) { mac = mo["MacAddress"].ToString(); break; } } } catch { } return mac; } /// <summary> /// 获取 ip 地址 /// </summary> /// <returns> ip 地址 </returns> public static string GetIpAddress() { string st = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_NetworkAdapterConfiguration"); foreach (ManagementObject mo in searcher.Get()) { if ((bool)mo["IPEnabled"] == true) { System.Array ar; ar = (System.Array)(mo.Properties["IpAddress"].Value); st = ar.GetValue(0).ToString(); break; } } } catch { } return st; } /// <summary> /// 获取主板序列号 /// </summary> /// <returns> 主板序列号 </returns> public static string GetBIOSSerialNumber() { string sBIOSSerialNumber = ""; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_BIOS"); foreach (ManagementObject mo in searcher.Get()) { sBIOSSerialNumber = mo.GetPropertyValue("SerialNumber").ToString().Trim(); break; } } catch { } return sBIOSSerialNumber; } }