首页 > 编程语言 >C# 通过WMI 获取硬件信息

C# 通过WMI 获取硬件信息

时间:2024-04-03 22:14:18浏览次数:24  
标签:Win32 C# 信息 硬件 获取 WMI CPU SELECT

// 关于WMI https://learn.microsoft.com/zh-cn/windows/win32/wmisdk/about-wmi
using System.Management;              // 使用WMI管理类, 需要从NuGet库中下载.


           ManagementClass aboutMe = new ManagementClass("win32_processor");
           // 参考: https://learn.microsoft.com/zh-cn/dotnet/api/system.management.managementclass.-ctor?view=dotnet-plat-ext-6.0#system-management-managementclass-ctor
           ManagementObjectCollection moc = aboutMe.GetInstances();
           foreach (ManagementObject x in moc) { label1.Text = $"CPU编号: {x["processorID"]}"; }

           ManagementObjectSearcher driveID = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");        // 使用了LINQ语法
           /*         常用的WMI查询语句
                       SELECT* FROM Win32_UserAccount 获取Windows用户信息
                       SELECT* FROM Win32_Group 获取用户组别信息
                       SELECT* FROM Win32_Process 获取当前进程信息
                       SELECT* FROM Win32_Service 获取系统服务信息
                       SELECT* FROM Win32_SystemDriver 获取系统驱动信息
                       SELECT* FROM Win32_Processor 获取CPU信息
                       SELECT* FROM Win32_BaseBoard 获取主板信息
                       SELECT* FROM Win32_BIOS 获取BIOS信息
                       SELECT* FROM Win32_VideoController 获取显示信息
                       SELECT* FROM Win32_SoundDevice 获取音频设备信息
                       SELECT* FROM Win32_PhysicalMemory 获取物内存理信息
                       SELECT* FROM Win32_LogicalDisk 获取磁盘信息
                       SELECT* FROM Win32_NetworkAdapter 获取网络适配器信息
                       SELECT* FROM Win32_NetworkProtocol 获取网络协议信息
                       SELECT* FROM Win32_Promter 获取打印和传真信息
                       SELECT* FROM Win32_Keyboard 获取键盘信息
                       SELECT* FROM Win32_PointingDevice 获取鼠标信息
                       SELECT* FROM Win32_SerialPort 获取串口信息
                       SELECT* FROM Win32_IDEController 获取IDE控制器信息
                       SELECT* FROM Win32_FloppyController 获取软体控制器信息
                       SELECT* FROM Win32_USBController 获取USB信息
                       SELECT* FROM Win32_SCSIController 获取SCSI信息
                       SELECT* FROM Win32_1394Controller 获取1394信息
                       SELECT* FROM Win32_PnPEntity 获取即插即用信息
           */

           foreach (ManagementObject CPUinfo in driveID.Get())
           {
               Console.WriteLine($"CPU制造商: {CPUinfo["manufacturer"]}");
               Console.WriteLine($"CPU名称: {CPUinfo["Name"]}");
           }
      

 

标签:Win32,C#,信息,硬件,获取,WMI,CPU,SELECT
From: https://www.cnblogs.com/xs-xs/p/18113606

相关文章

  • CSS 布局专题
    0x01浮动布局(1)常见网页布局顶部商标栏(Logo):展示网站的标志、名称以及具有代表性的图片导航栏(Navigation):展示网站大概的分类左侧边栏(Left-sideBar):展示网站详细的分类内容栏(Content):展示网站的主要内容右侧边栏(Right-sideBar):展示在网站中比较热门的内容(2)浮动布局概述流......
  • run Python asyncio code in a Jupyter notebook
     NewJupyterlab/notebookimportasyncioimporttimeasyncdefmy_coroutine():awaitasyncio.sleep(1)print("Coroutineexecuted!")s=time.perf_counter()loop=asyncio.get_event_loop()loop.create_task(my_coroutine())asyncio.r......
  • Microservice - Solution Selection for Distributed Transaction Framework
      ......
  • EF Core 高效更新
    高效更新本文内容批处理在相关情况下使用ExecuteUpdate和ExecuteDelete批处理EFCore通过在一次往返中自动将所有更新批处理在一起,帮助最大限度地减少往返。考虑以下情况:C#复制varblog=context.Blogs.Single(b=>b.Url=="http://someblog.microsoft.com");blog.Url......
  • 【讲解下如何安装ArcGIS 10.8】
    ......
  • 【高校科研动态】贵州师大博士生封清为一作在J. Clean. Prod.发文:中国扶贫搬迁对生态
    目录1.文章简介 2.主要研究内容    3.文章引用1.文章简介 论文名称:QuantifyingtheextentofecologicalimpactfromChina'spovertyalleviationrelocationprogram:AcasestudyinGuizhouProvince第一作者及通讯作者:封清(博士研究生),周忠发(教授)第一作......
  • 佳佳的 Fibonacci
    和lyh想的差不多,我认为我写的会更详细一些。dyc好厉害。完全想不到这样的做法。给你两个整数\(n\),\(m\),让你求以下式子的值。\[T(n)=\sum_{i=1}^{n}f(i)\timesi\bmodm\]对于斐波那契数列\(f(n)=f(n-1)+f(n-2)\)这样的性质,使用前缀和化简式子是个好东西。式子就变......
  • ctfshow--web5
    这题是md5弱类型比较点击查看代码<?php$flag="";$v1=$_GET['v1'];$v2=$_GET['v2'];if(isset($v1)&&isset($v2)){if(!ctype_alpha($v1)){die("v1error");......
  • [7] UE C++
    Day3  制作引擎使用的属性//制作引擎使用的属性UPROPERTY()classUPaperFlipbook*RedBird;UPROPERTY(EditAnywhere,Category="SelfProprety|Number")//可读可写标记int32Number;//在细节面板中可以被编辑,同时也能被访问UPROPERTY(VisibleAnywhere)//只读标记int32A......
  • Opencv各个颜色空间、用途(颜色通道分割与合并)
    Opencv各个颜色空间、用途(颜色通道分割与合并)OpenCV中提供了多种颜色空间,每种颜色空间都有其特定的用途。以下是一些常见的颜色空间及其用途:BGR颜色空间:BGR颜色空间是一种与计算机显示器显示的颜色相同的颜色空间。它由蓝色、绿色和红色通道组成,通常用于图像处理和计算机......