如何用C#获取计算机详细的软件和硬件信息

目录
  • 前言
  • 写几行代码就可以获取到计算机丰富的配置信息
  • 我总结了常用到的表名及对应包含的信息
  • 总结

前言

利用System.Management提供的类可以用于读取本地计算机设备的各种数据,包括操作系统、软件、硬件的各种详细信息,内容很丰富。

System.Management的命名空间下,ManagementObjectSearcher类用于查询特定类型的设备,ManagementObjectCollection类用于枚举查询结果中的设备,ManagementBaseObject类用于获取设备属性等。

写几行代码就可以获取到计算机丰富的配置信息

代码比较简单:

        private void listBox1_DoubleClick(object sender, EventArgs e)
        {
            if (listBox1.SelectedItem!=null)
            {
                //得到选择的字符串
                string StrSelect = listBox1.SelectedItem.ToString();
                listBox2.Items.Clear();
                GetComputerInfo(StrSelect);
            }
        }

        private void GetComputerInfo(string StrSQL)
        {
            ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM "+StrSQL);
            foreach (ManagementObject obj in searcher.Get())
            {
                foreach (PropertyData prop in obj.Properties)
                {
                    listBox2.Items.Add(prop.Name + " : " + prop.Value);
                }
            }
        }

关键在于对这些表所包含信息的筛选,这个可以根据自己的需要来取舍。

我总结了常用到的表名及对应包含的信息

  01. Win32_Processor:处理器信息;
  02. Win32_Printer:打印机信息;
  03. Win32_NetworkAdapter:网络适配器信息;
  04. Win32_LoggedOnUser:登录用户信息;
  05. Win32_SystemEnclosure:系统外壳信息;
  06. Win32_ComputerSystem:计算机系统信息;
  07. Win32_Bios:BIOS信息;
  08. Win32_OperatingSystem:操作系统信息;
  09. Win32_StartupCommand:启动命令信息;
  10. Win32_Share:共享信息;
  11. Win32_NetworkClient:网络客户端信息;
  12. Win32_Service:服务信息;
  13. Win32_UserAccount:用户帐号信息;
  14. Win32_Group:组信息;
  15. Win32_ComputerSystemProduct:计算机系统产品信息;
  16. Win32_ComputerSystemProcessor:计算机系统处理器信息;
  17. Win32_PhysicalMemory:物理内存信息;
  18. Win32_DiskDrive:磁盘驱动器信息;
  19. Win32_NetworkLoginProfile:网络登录配置文件信息;
  20. Win32_Product:安装的软件产品信息。
  21. Win32_BaseBoard:主板信息
  22. Win32_PhysicalMemory:内存信息
  23. Win32_DiskDrive:硬盘信息
  24. Win32_VideoController:显卡信息
  25. Win32_SoundDevice:声卡信息
  26. Win32_ComputerSystem:计算机系统信息

有了上面的信息表,你可以利用这些表来做很多的事情了。

总结

到此这篇关于如何用C#获取计算机详细的软件和硬件信息的文章就介绍到这了,更多相关C#获取计算机信息内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • C# 获取硬件参数的实现方法

    C# 获取硬件参数的实现方法 示例代码: private static string GetIdentifier(string wmiClass, string wmiProperty, string wmiMustBeTrue) { string result = ""; System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass); System.Management.M

  • C#编程获取客户端计算机硬件及系统信息功能示例

    本文实例讲述了C#编程获取客户端计算机硬件及系统信息功能.分享给大家供大家参考,具体如下: 这里使用C#获取客户端计算机硬件及系统信息 ,包括CPU.硬盘.IP.MAC地址.操作系统等. 1.项目引用System.Management库. 2.创建HardwareHandler.cs类文件 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Manag

  • C#编程获取各种电脑硬件信息的方法示例

    本文实例讲述了C#编程获取各种电脑硬件信息的方法.分享给大家供大家参考,具体如下: 获取CPU编号: ManagementClass mc = new ManagementClass("Win32_Processor"); ManagementObjectCollection moc = mc.GetInstances(); string strID = null ; foreach( ManagementObject mo in moc ) { strID = mo.Properti

  • C#如何取硬件标志

    using System; using System.Runtime.InteropServices; using  System.Management; namespace Hardware { /// <summary> /// Hardware_Mac 的摘要说明. /// </summary> public class HardwareInfo {   //取机器名    public string GetHostName()   {    return System.Ne

  • c# 获取计算机硬件信息的示例代码

    /// <summary> /// 获取CPU的编号 /// </summary> /// <returns>CPU的编号</returns> public static List<string> GetCPUID() { List<string> lstInfo =new List<string>(); ManagementClass cimobject = new ManagementClass("Win32

  • C#获取计算机硬件与操作系统的相关信息

    1.项目引用System.Management库文件 2.创建HardwareHandler.cs类文件 namespace HardInfoTest.Utility { /// <summary> /// 计算机硬件处理类 /// </summary> public class HardwareHandler { public enum WMIPath { // 硬件 Win32_Processor, // CPU 处理器 Win32_PhysicalMemory, // 物理内

  • 如何用C#获取计算机详细的软件和硬件信息

    目录 前言 写几行代码就可以获取到计算机丰富的配置信息 我总结了常用到的表名及对应包含的信息 总结 前言 利用System.Management提供的类可以用于读取本地计算机设备的各种数据,包括操作系统.软件.硬件的各种详细信息,内容很丰富. System.Management的命名空间下,ManagementObjectSearcher类用于查询特定类型的设备,ManagementObjectCollection类用于枚举查询结果中的设备,ManagementBaseObject类用于获取设备

  • 如何用Python获取计算机名,ip地址,mac地址

    获取计算机名 # 获取计算机名,常用的方法有三种,但最常用的是第一种 import os import socket # method one name = socket.gethostname() print(name) # hanser # method two name = os.popen("hostname").read() print(name) # hanser # method three name = os.environ.get("COMPUTERNAME

  • C#获取计算机名,IP,MAC信息实现代码

    利用C#获取计算机名,IP,MAC信息,如下为源代码: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; using System.Net; using System.Management; namespace Wenanry.Net { /// <summary> /// 获取计算机系统信息 /// </summary> public class ManagementSyst

  • 如何用python获取到照片拍摄时的详细位置(附源码)

    目录 一.引言 1.读取照片信息,获取坐标 2.通过baidu Map的API将GPS信息转换成地址. 二.源码附上!!! 注意事项 总结 一.引言 先看获取到的效果 拍摄时间:2021:12:18 16:22:13照片拍摄地址:('内蒙古自治区包头市昆都仑区', '内蒙古自治区', '包头市', '昆都仑区', '多米幼儿园东南360米') 我们的女朋友给我们发来一张照片我们如何获取到她的位置呢? 用手机拍照会带着GPS信息,原来没注意过这个,因此查看下并使用代码获取照片里的GPS信息 查看图

  • python 获取计算机的网卡信息

    0. 前言 正常情况下,如果想要查看电脑的网卡IP地址或是MAC地址,直接通过界面找到网卡进行查看就有了,亦或是通过命令如linux的ifconfig得到IP等信息,那么本节教大家如何通过python的方式获取网卡的IP/MAC信息. 1. 测试环境及关键代码解释 1.1 测试环境 1.1.1 系统: Ubuntu 16.04.6 LTS Windows 10 x64 1.1.2 开发工具: pycharm 专业版 备注:专业版支持本地远程linux调试. 2. 模块介绍及演示 本次只需要用到3

  • 如何用python编写一个生成春联软件

    目录 前言 效果展示 代码 打包exe可执行文件 总结 前言 最近不是快过年了,Python写对联挺火的,但是代码又不是人人都用,那就直接写个界面打包一下呗~ 主要实现只要运行后输入上联下联.横批,然后自动生成春联保存在代码文件夹,如果要打印出来也是可以的. 效果展示 输入对联,选择路径后点击开始生成春联即可. 代码 需要导入的模块 # 网络数据获取相关模块 import io # python IO 处理模块 from PIL import Image # 图像处理模块 import requ

  • asp.net实现获取客户端详细信息

    本文实例讲述了asp.net实现获取客户端详细信息代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: 其中aspx页面的控件代码: 复制代码 代码如下: <asp:ListBox runat="server" ID="lbHoverTreeInfo" ClientIDMode="Static"> </asp:ListBox> 以下是实现代码: using System; using System.W

  • PHP基于新浪IP库获取IP详细地址的方法

    本文实例讲述了PHP基于新浪IP库获取IP详细地址的方法.分享给大家供大家参考,具体如下: <?php class Tool{ /** * 获取IP的归属地( 新浪IP库 ) * * @param $ip String IP地址:112.65.102.16 * @return Array */ static public function getIpCity($ip) { $ip = preg_replace("/\s/","",preg_replace(&q

  • vc获取计算机名和ip地址的方法

    本文实例讲述了vc获取计算机名和ip地址的方法.分享给大家供大家参考.具体实现方法如下: #include <winsock2.h> #include <stdio.h> #pragma comment(lib,"ws2_32.lib") void main() { WSADATA wsadata; WORD dwVersionRequested; int err; err=WSAStartup(dwVersionRequested,&wsadata);

  • Android通过aapt命令获取apk详细信息(包括:文件包名,版本号,SDK等信息)

    公司运维问我怎么在windows上安装模拟器,我你说你安装模拟器干什么?他说,我安装模拟器查看app的包名这些信息做统计. 我顿时想,有必要这样折腾么? 我然后就给他装了Android SDK通过build-tools下面的aapt.exe文件执行命令即可得到所有apk信息. aapt命令 aapt l[ist] [-v] [-a] file.{zip,jar,apk} List contents of Zip-compatible archive. aapt d[ump] [--values]

随机推荐