windows下執行命令除了用cmd之外,還有個東西叫WMIC,非常強大,可以通過他獲取很多信息,包括硬件信息。
QString frmMain::getWMIC(const QString &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 QProcess p; p.start(cmd); p.waitForFinished(); QString result = QString::fromLocal8Bit(p.readAllStandardOutput()); QStringList list = cmd.split(" "); result = result.remove(list.last(), Qt::CaseInsensitive); result = result.replace("\r", ""); result = result.replace("\n", ""); result = result.simplified(); return result; } QString frmMain::getCpuName() { return getWMIC("wmic cpu get name"); } QString frmMain::getCpuId() { return getWMIC("wmic cpu get processorid"); } QString frmMain::getDiskNum() { return getWMIC("wmic diskdrive where index=0 get serialnumber"); }