C#中通过代码获取当前系统主板BIOS中序列号等信息的方法
2024-08-04
41
在Windows中获取系统BIOS中的各种信息,可以用wmic命令,如下:
wmic BIOS get name,manufacturer,version,serialnumber,releasedate,currentlanguage,description
- Name: 主板BIOS名称
- SerialNumber: 主板BIOS序列号
- Version: 主板BIOS版本号
- ReleaseDate: 主板BIOS生产日期
- CurrentLanguage: 主板BIOS语言
- Manufacturer: 主板BIOS制造商
- Description: 主板BIOS描述信息
- Status: 主板BIOS状态
有时候,我们在软件中需要获取当前系统主板的序列号,在C#中可以使用Win32_BaseBoard WMI对象中的“SerialNumber”是属性,代码如下:
using System;
using System.Management;
namespace get_mother_board_sn
{
class Program
{
static void Main(string[] args)
{
//如果使用Win32_BaseBoard返回了字符串“To be filled by O.E.M.”,可以使用Win32_BIOS获取。
ManagementObjectSearcher moSearcher =
new ManagementObjectSearcher(SELECT SerialNumber FROM Win32_BaseBoard);
ManagementObjectCollection info = moSearcher.Get();
foreach (ManagementObject obj in info)
{
foreach (PropertyData data in obj.Properties)
Console.WriteLine({0} = {1}, data.Name, data.Value);
Console.WriteLine();
}
moSearcher.Dispose();
}
}
}
以上代码主要添加引用程序集:System.Management,仅支持windows中获取系统主板序列号。
如果使用Win32_BaseBoard返回了字符串“To be filled by O.E.M.”,可以使用Win32_BIOS获取。
需要了更多WMI类和属性,可以参考微软手册:https://docs.microsoft.com/zh-cn/windows/win32/wmisdk/wmi-start-page?redirectedfrom=MSDN
赞一波!2
相关文章
- TP6.0 空控制器: 健壮系统服务
- 微擎TP6.0框架 微擎版、独立版 路由通用生成方法
- 系统的讲解网站的优化
- 春节代码 新年快乐html 灯笼js
- 圣诞树代码 下雪
- 表白代码,爱心树html
- .NET Core最新使用Session的方法
- TP6.0 基础控制器初始化方法中的重定向无效
- TP6.0 系统服务的使用和理解
- git pull 从远程获取代码并合并本地的版本
- linux shell的几种截取字符串的方法
- Windows 系统 PhpStorm 2020无限试用30天
- 使用C#的Socket实现最简单的TCP通信示例代码
- vscode中自动将json格式的内容自动生成对应的代码
- 代码写得好 在哪里都能蹦迪
- C#检测网络端口是否被占用的参考代码
- vscode打开代码中文显示乱码的问题
- TP6模型类在PhpStorm中没有方法提示
- 构造方法 __construct()
- C#中await/async异步编程采坑—async方法可能会同步执行
文章评论
全部评论