狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

Net跨平臺硬件信息查詢庫 Hardware.Info:全面獲取系統硬件詳情

freeflydom
2025年2月13日 10:32 本文熱度 629

Hardware.Info 是一個基于 .NET Standard 2.0 的跨平臺庫,提供了硬件信息查詢的功能,支持 Windows、Linux 和 macOS 操作系統。該庫通過不同平臺下的系統接口獲取硬件信息,包括電池、電池管理、BIOS、CPU、存儲驅動、鍵盤、內存、顯示器、主板、鼠標、網絡適配器、打印機、聲音卡、顯卡等硬件組件的詳細數據。

主要特點

跨平臺支持
  • Windows:使用 Windows Management Instrumentation(WMI)來獲取硬件信息。
  • Linux:通過 /dev、/proc、/sys 文件系統來訪問硬件信息。
  • macOS:利用 sysctl 和 system_profiler 命令來查詢硬件數據。
獲取硬件信息
  • 電池信息:當前電池狀態、容量、充電狀態等。
  • BIOS:BIOS 版本、廠商等信息。
  • CPU 處理器:包括處理器型號、架構、核心數量、頻率等詳細信息。
  • 存儲驅動:磁盤驅動器型號、容量、狀態等。
  • 內存:系統內存容量、使用情況等。
  • 顯示器:分辨率、顏色深度、刷新率等。
  • 網絡適配器:包括網絡接口卡的速度、MAC 地址、IP 地址等。
  • 顯卡:顯卡型號、內存、驅動信息等。

獲取硬件信息

第一步,老規矩,先安裝

Install-Package Hardware.Info
using Hardware.Info;
using System.Net.NetworkInformation;
static IHardwareInfo hardwareInfo;
static void Main(string[] args)
{
    try
    {
        hardwareInfo = new HardwareInfo();
        //hardwareInfo.RefreshOperatingSystem();
        //.....
        //刷新所有硬件信息
        hardwareInfo.RefreshAll();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex);
    }
    Console.WriteLine("輸出操作系統信息" + Environment.NewLine);
    Console.WriteLine(hardwareInfo.OperatingSystem);
    Console.WriteLine("輸出內存狀態信息" + Environment.NewLine);
    Console.WriteLine(hardwareInfo.MemoryStatus);
    Console.WriteLine("輸出電池信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.BatteryList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出 BIOS 信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.BiosList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出計算機系統信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.ComputerSystemList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出 CPU 信息" + Environment.NewLine);
    foreach (var cpu in hardwareInfo.CpuList)
    {
        Console.WriteLine(cpu);
        Console.WriteLine("輸出 CPU 核心信息" + Environment.NewLine);
        foreach (var cpuCore in cpu.CpuCoreList)
            Console.WriteLine(cpuCore);
    }
    Console.WriteLine("輸出磁盤驅動器信息" + Environment.NewLine);
    foreach (var drive in hardwareInfo.DriveList)
    {
        Console.WriteLine(drive);
        Console.WriteLine("輸出驅動器分區信息" + Environment.NewLine);
        foreach (var partition in drive.PartitionList)
        {
            Console.WriteLine(partition);
            Console.WriteLine("輸出分區卷信息" + Environment.NewLine);
            foreach (var volume in partition.VolumeList)
                Console.WriteLine(volume);
        }
    }
    Console.WriteLine("輸出鍵盤信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.KeyboardList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出內存信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.MemoryList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出顯示器信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.MonitorList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出主板信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.MotherboardList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出鼠標信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.MouseList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出網絡適配器信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.NetworkAdapterList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出打印機信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.PrinterList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出聲音設備信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.SoundDeviceList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出顯卡信息" + Environment.NewLine);
    foreach (var hardware in hardwareInfo.VideoControllerList)
        Console.WriteLine(hardware);
    Console.WriteLine("輸出 Ethernet 類型并且狀態為 Up 的本地 IPv4 地址" + Environment.NewLine);
    foreach (var address in HardwareInfo.GetLocalIPv4Addresses(NetworkInterfaceType.Ethernet, OperationalStatus.Up))
        Console.WriteLine(address);
    Console.WriteLine();
    Console.WriteLine("輸出 Wireless80211 類型的本地 IPv4 地址" + Environment.NewLine);
    foreach (var address in HardwareInfo.GetLocalIPv4Addresses(NetworkInterfaceType.Wireless80211))
        Console.WriteLine(address);
    Console.WriteLine();
    Console.WriteLine("輸出狀態為 Up 的網絡接口卡的本地 IPv4 地址" + Environment.NewLine);
    foreach (var address in HardwareInfo.GetLocalIPv4Addresses(OperationalStatus.Up))
        Console.WriteLine(address);
    Console.WriteLine();
    Console.WriteLine("輸出所有網絡接口卡的本地 IPv4 地址" + Environment.NewLine);
    foreach (var address in HardwareInfo.GetLocalIPv4Addresses())
        Console.WriteLine(address);
    Console.WriteLine();
    Console.WriteLine("輸出計算機當前時間" + Environment.NewLine);
    Console.WriteLine(DateTime.Now);
    Console.WriteLine("輸出系統啟動時間" + Environment.NewLine);
    Console.WriteLine(Environment.TickCount);
}

字段對照表

以項目為準,僅供參考,項目地址:https://github.com/hardware-info/hardware-info

字段描述
OperatingSystem操作系統信息,如操作系統版本和名稱。
MemoryStatus內存狀態信息,描述系統當前內存的使用情況。
BatteryList電池信息,列出計算機系統中所有電池的狀態。
BiosListBIOS 信息,列出計算機系統中的所有 BIOS 版本和設置。
ComputerSystemList計算機系統信息,提供計算機硬件配置的詳細信息。
CpuListCPU 信息,列出系統中所有的 CPU 和相關信息。
CpuCoreListCPU 核心信息,列出每個 CPU 核心的詳細信息。
DriveList硬盤驅動器信息,列出計算機系統中的所有硬盤驅動器。
PartitionList磁盤分區信息,列出每個硬盤驅動器的分區情況。
VolumeList分區卷信息,列出每個磁盤分區下的卷(文件系統)信息。
KeyboardList鍵盤信息,列出計算機系統中的所有鍵盤設備。
MemoryList內存條信息,列出計算機系統中所有內存模塊的狀態。
MonitorList顯示器信息,列出系統中連接的所有顯示器。
MotherboardList主板信息,列出計算機系統中的主板信息。
MouseList鼠標信息,列出計算機系統中的所有鼠標設備。
NetworkAdapterList網絡適配器信息,列出計算機系統中所有網絡適配器(如以太網適配器、Wi-Fi適配器等)。
PrinterList打印機信息,列出計算機系統中的所有連接打印機。
SoundDeviceList聲音設備信息,列出計算機系統中的所有音頻設備。
VideoControllerList顯卡信息,列出計算機系統中的所有顯卡及相關信息。
GetLocalIPv4Addresses()獲取本地計算機的 IPv4 地址信息,根據網絡接口類型(如以太網、無線網卡等)篩選。
NetworkInterfaceType網絡接口類型,指示硬件的網絡連接類型,如以太網或無線網卡。
OperationalStatus網絡接口的操作狀態,如 “Up” 表示已連接, “Down” 表示未連接。

總結

Hardware.Info 是一個強大的跨平臺硬件信息查詢庫,支持 Windows、Linux 和 macOS 操作系統,能方便地獲取多種硬件信息。盡管存在一些已知問題,比如首次查詢的延遲和部分數據無效的情況,但通過合適的配置和方法,可以有效解決這些問題,提供了強大的硬件信息獲取能力。

轉自https://www.cnblogs.com/netcore5/p/18711795


該文章在 2025/2/13 10:32:20 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved