1、项目引用System.Management库。
2、帮助类
public class HardwareHandler
{
public HardwareHandler()
{
}
public void CpuInfo()
{
try
{
ManagementClass mc = new ManagementClass(WMIPath.Win32_Processor.ToString());
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
Console.WriteLine("CPU编号:" + mo.Properties["ProcessorId"].Value);
Console.WriteLine("CPU型号:" + mo.Properties["Name"].Value);
Console.WriteLine("CPU状态:" + mo.Properties["Status"].Value);
Console.WriteLine("主机名称:" + mo.Properties["SystemName"].Value);
}
}
catch
{
Console.WriteLine("Erroe");
}
}
public void MainBoardInfo()
{
try
{
ManagementClass mc = new ManagementClass(WMIPath.Win32_BaseBoard.ToString());
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
Console.WriteLine("主板ID:" + mo.Properties["SerialNumber"].Value);
Console.WriteLine("制造商:" + mo.Properties["Manufacturer"].Value);
Console.WriteLine("型号:" + mo.Properties["Product"].Value);
Console.WriteLine("版本:" + mo.Properties["Version"].Value);
}
}
catch
{
Console.WriteLine("Erroe");
}
}
public void DiskDriveInfo()
{
try
{
ManagementClass mc = new ManagementClass(WMIPath.Win32_DiskDrive.ToString());
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
Console.WriteLine("硬盘SN:" + mo.Properties["SerialNumber"].Value);
Console.WriteLine("型号:" + mo.Properties["Model"].Value);
Console.WriteLine("大小:" + Convert.ToDouble(mo.Properties["Size"].Value) / (1024 * 1024 * 1024));
}
}
catch
{
Console.WriteLine("Erroe");
}
}
public void GetDefaultIP()
{
try
{
IPHostEntry ipHost = Dns.Resolve(Dns.GetHostName());
IPAddress ipAddr = ipHost.AddressList[0];
Console.WriteLine("本机IP地址:" + ipAddr.ToString());
}
catch (Exception exp)
{ }
}
public void OsInfo()
{
try
{
ManagementClass mc = new ManagementClass(WMIPath.Win32_OperatingSystem.ToString());
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
Console.WriteLine("操作系统:" + mo.Properties["Name"].Value);
Console.WriteLine("版本:" + mo.Properties["Version"].Value);
Console.WriteLine("系统目录:" + mo.Properties["SystemDirectory"].Value);
}
}
catch
{
Console.WriteLine("Erroe");
}
}
}
public enum WMIPath
{
Win32_Processor,
Win32_PhysicalMemory,
Win32_Keyboard,
Win32_PointingDevice,
Win32_FloppyDrive,
Win32_DiskDrive,
Win32_CDROMDrive,
Win32_BaseBoard,
Win32_BIOS,
Win32_ParallelPort,
Win32_SerialPort,
Win32_SerialPortConfiguration,
Win32_SoundDevice,
Win32_SystemSlot,
Win32_USBController,
Win32_NetworkAdapter,
Win32_NetworkAdapterConfiguration,
Win32_Printer,
Win32_PrinterConfiguration,
Win32_PrintJob,
Win32_TCPIPPrinterPort,
Win32_POTSModem,
Win32_POTSModemToSerialPort,
Win32_DesktopMonitor,
Win32_DisplayConfiguration,
Win32_DisplayControllerConfiguration,
Win32_VideoController,
Win32_VideoSettings,
Win32_TimeZone,
Win32_SystemDriver,
Win32_DiskPartition,
Win32_LogicalDisk,
Win32_LogicalDiskToPartition,
Win32_LogicalMemoryConfiguration,
Win32_PageFile,
Win32_PageFileSetting,
Win32_BootConfiguration,
Win32_ComputerSystem,
Win32_OperatingSystem,
Win32_StartupCommand,
Win32_Service,
Win32_Group,
Win32_GroupUser,
Win32_UserAccount,
Win32_Process,
Win32_Thread,
Win32_Share,
Win32_NetworkClient,
Win32_NetworkProtocol,
}