C#怎么获取计算机硬件与操作系统的信息
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍"C#怎么获取计算机硬件与操作系统的信息",在日常操作中,相信很多人在C#怎么获取计算机硬件与操作系统的信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答
千家信息网最后更新 2026年11月02日C#怎么获取计算机硬件与操作系统的信息
这篇文章主要介绍"C#怎么获取计算机硬件与操作系统的信息",在日常操作中,相信很多人在C#怎么获取计算机硬件与操作系统的信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"C#怎么获取计算机硬件与操作系统的信息"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1、项目引用System.Management库文件
2、创建HardwareHandler.cs类文件
namespace HardInfoTest.Utility{ /// /// 计算机硬件处理类 /// public class HardwareHandler { public enum WMIPath { // 硬件 Win32_Processor, // CPU 处理器 Win32_PhysicalMemory, // 物理内存条 Win32_Keyboard, // 键盘 Win32_PointingDevice, // 点输入设备,包括鼠标。 Win32_FloppyDrive, // 软盘驱动器 Win32_DiskDrive, // 硬盘驱动器 Win32_CDROMDrive, // 光盘驱动器 Win32_BaseBoard, // 主板 Win32_BIOS, // BIOS 芯片 Win32_ParallelPort, // 并口 Win32_SerialPort, // 串口 Win32_SerialPortConfiguration, // 串口配置 Win32_SoundDevice, // 多媒体设置,一般指声卡。 Win32_SystemSlot, // 主板插槽 (ISA & PCI & AGP) Win32_USBController, // USB 控制器 Win32_NetworkAdapter, // 网络适配器 Win32_NetworkAdapterConfiguration, // 网络适配器设置 Win32_Printer, // 打印机 Win32_PrinterConfiguration, // 打印机设置 Win32_PrintJob, // 打印机任务 Win32_TCPIPPrinterPort, // 打印机端口 Win32_POTSModem, // MODEM Win32_POTSModemToSerialPort, // MODEM 端口 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, // 已安装的网络协议 } /// /// Cpu信息 /// /// public void CpuInfo() { try { ManagementClass mc = new ManagementClass(WMIPath.Win32_Processor.ToString()); ManagementObjectCollection moc = mc.GetInstances(); Console.WriteLine("==================================="); 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); } Console.WriteLine("==================================="); } catch { Console.WriteLine("Error"); } } /// /// 主板信息 /// public void MainBoardInfo() { try { ManagementClass mc = new ManagementClass(WMIPath.Win32_BaseBoard.ToString()); ManagementObjectCollection moc = mc.GetInstances(); Console.WriteLine("==================================="); 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); } Console.WriteLine("==================================="); } catch { Console.WriteLine("Error"); } } /// /// 硬盘信息 /// public void DiskDriveInfo() { try { ManagementClass mc = new ManagementClass(WMIPath.Win32_DiskDrive.ToString()); ManagementObjectCollection moc = mc.GetInstances(); Console.WriteLine("==================================="); 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)); } Console.WriteLine("==================================="); } catch { Console.WriteLine("Error"); } } /// /// 网络连接信息 /// public void NetworkInfo() { try { ManagementClass mc = new ManagementClass(WMIPath.Win32_NetworkAdapterConfiguration.ToString()); ManagementObjectCollection moc = mc.GetInstances(); Console.WriteLine("==================================="); foreach (ManagementObject mo in moc) { Console.WriteLine("MAC地址:" + mo.Properties["MACAddress"].Value); Console.WriteLine("IP地址:" + mo.Properties["IPAddress"].Value); } Console.WriteLine("==================================="); } catch { Console.WriteLine("Error"); } } /// /// 操作系统信息 /// public void OsInfo() { try { ManagementClass mc = new ManagementClass(WMIPath.Win32_OperatingSystem.ToString()); ManagementObjectCollection moc = mc.GetInstances(); Console.WriteLine("==================================="); foreach (ManagementObject mo in moc) { Console.WriteLine("操作系统:" + mo.Properties["Name"].Value); Console.WriteLine("版本:" + mo.Properties["Version"].Value); Console.WriteLine("系统目录:" + mo.Properties["SystemDirectory"].Value); } Console.WriteLine("==================================="); } catch { Console.WriteLine("Error"); } } }}3、调用测试代码
static void Main(string[] args) { HardwareHandler hd = new HardwareHandler(); hd.CpuInfo(); hd.DiskDriveInfo(); hd.MainBoardInfo(); hd.NetworkInfo(); hd.OsInfo(); }4、测试输出截图
到此,关于"C#怎么获取计算机硬件与操作系统的信息"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
系统
信息
操作系统
硬件
计算机
网络
C#
主板
打印机
显卡
学习
驱动
型号
文件
硬盘
磁盘
逻辑
驱动器
配置
串口
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网高科技
互联网科技公司简介
腾讯阿里互联网科技
北京互联网络科技有限公司
互联网科技logo
佩信高科技互联网
成都玖崟互联网科技有限公司乐商圈怎么样
受益于互联网科技的高速发展
健康食品互联网创新科技园项目
晋城互联网科技
伊宁互联网科技做什么的
图游互联网科技
信承诺互联网科技有限公司
盐城市攀科互联网科技有限公司
互联网科技创新创业项目
互联网对科技影响
互联网科技创业计划的风险分析
恒生互联网科技趋势
互联网企业和网络科技有限公司
六子台科技互联网展会
中国互联网科技股
华中科技大学互联网
哈尔滨新华互联网科技
哈尔滨秒房互联网科技有限公司
深圳互联网科技怎么样
互联网科技产业特征
银川新华互联网科技学校联系电话
互联网科技快讯热点
科技互联网经济论坛
玉溪新华互联网科技怎么选