C#获取电脑硬件信息(CPU ID、主板ID、硬盘ID、BIOS编号)
using System.Management; //CPU ManagementClass mc = new ManagementClass("Win32_Processor"); ManagementObjectCollection moc = mc.GetInstances(); string strID = null; foreach (ManagementObject mo in moc) { strID = mo.Properties["ProcessorId"].Value.ToString() + "==CPU==="; break; } //主板 ManagementClass mc2 = new ManagementClass("Win32_BaseBoard"); ManagementObjectCollection moc2 = mc2.GetInstances(); foreach (ManagementObject mo in moc2) { strID += mo.Properties["SerialNumber"].Value.ToString(); break; } //硬盘 ManagementClass mc3 = new ManagementClass("Win32_PhysicalMedia"); //网上有提到,用Win32_DiskDrive,但是用Win32_DiskDrive获得的硬盘信息中并不包含SerialNumber属性。 ManagementObjectCollection moc3 = mc3.GetInstances(); foreach (ManagementObject mo in moc3) { strID += mo.Properties["SerialNumber"].Value.ToString(); break; } //BIOS ManagementClass mc4 = new ManagementClass("Win32_BIOS"); ManagementObjectCollection moc4 = mc.GetInstances(); foreach (ManagementObject mo in moc4) { strID += mo.Properties["SerialNumber"].Value.ToString(); break; }