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");
}