QT獲取CPU 主機板 硬碟 網絡卡等相關資料

2021-10-02 05:13:33 字數 2363 閱讀 1568

windows下獲取cpu、主機板、硬碟等電腦相關硬體的辦法很多,可以直接呼叫windows api的方式實現,不過**都很複雜,不容易理解。這裡使用一種很簡便的方式來查詢我們需要的資訊,先了解乙個東西「wmic」(windows management instrumentation,windows管理工具),提供了從命令列介面和批命令指令碼執行系統管理的支援。可以開啟cmd在其中輸入如下命令,獲取相關的資訊。

//獲取cpu名稱:wmic cpu get name

//獲取cpu核心數:wmic cpu get numberofcores

//獲取cpu執行緒數:wmic cpu get numberoflogicalprocessors

//查詢cpu序列號:wmic cpu get processorid

//查詢主機板序列號:wmic baseboard get serialnumber

//查詢bios序列號:wmic bios get serialnumber

//檢視硬碟:wmic diskdrive get serialnumber

//獲取主機板序唯一標識:wmic csproduct get uuid

//查詢網絡卡連線唯一標識:wmic path win32_networkadapter get guid

//查詢網絡卡是否啟用:wmic path win32_networkadapter get netenabled

//查詢網絡卡是否為物理介面卡:wmic path win32_networkadapter get physicaladapter

//查詢網絡卡索引號:wmic path win32_networkadapter get index

//程式中用到的標頭檔案

#include

qstring getinfo

(const qstring &cmd)

//查詢cpu型號

qstring getcpuname()

//查詢cpu核心數

qstring getcpucore()

查詢cpu執行緒數

qstring getcpuprocessors()

//查詢cpu序列號

qstring getcpuprocessorid()

//查詢主機板序列號

qstring getbaseboardserialnumber()

//查詢bios序列號

qstring getbiosserialnumber()

//查詢主機板唯一標識

qstring getbaseboarduuid()

//查詢硬碟序列號

qstring getdiskserialnumber()

上面的辦法可能在一些機器上不能實現,可能原因是因為系統預裝時沒有安裝wmic工具,因此無法執行wmic命令,查了相關資料後,找到了另外一種辦法,辦法相對比較複雜,目前也只有獲取cpu資訊的程式。

void

getcpuidex

(unsigned

int cpuinfo[4]

,unsigned

int infotype,

unsigned

int ecxvalue)

#endif

#endif

}void

getcpuid

(unsigned

int cpuinfo[4]

,unsigned

int infotype)

qstring get_cpuid()

;unsigned

long

long ret =0;

getcpuid

(dwbuf,1)

; ret = dwbuf[3]

; ret = ret <<32;

qstring str0 = qstring::

number

(dwbuf[3]

,16).

toupper()

; qstring str0_1 = str0.

rightjustified(8

,'0');

qstring str1 = qstring::

number

(dwbuf[0]

,16).

toupper()

; qstring str1_1 = str1.

rightjustified(8

,'0');

cpu_id = str0_1 + str1_1;

return cpu_id;

}

linux 下檢視主機板 CPU 記憶體 硬碟等資訊

1.檢視主機板資訊 dmidecode grep a16 system information 2.檢視cpu資訊 cpu總核數 物理cpu個數 每顆物理cpu的核數 總邏輯cpu數 物理cpu個數 每顆物理cpu的核數 超執行緒數 檢視cpu資訊 型號 root esggy clu n003 ca...

C 獲取CPU序號硬碟碼網絡卡編號

public class computer 1.獲取cpu序列號 static string getcpuid moc null mc null return cpuinfo catch finally 2.獲取網絡卡硬體位址 static string getmacaddress moc null...

C 獲取CPU序列號 網絡卡MAC位址 硬碟序列號

c 獲取cpu序列號 windows 管理規範 wmi 是可伸縮的系統管理結構,它採用乙個統一的 基於標準的 可擴充套件的物件導向介面。wmi 為您提供與系統管理資訊和基礎 wmi api 互動的標準方法。wmi 主要由系統管理應用程式開發人員和管理員用來訪問和作業系統管理資訊。wmi 可用於生成組...