Qt6.5,大佬帮忙看看是哪里有问题:
QString Widget::getCpuProcessorId()
{
QString cpuInfo;
#ifdef Q_OS_WIN
QProcess process;
process.start("wmic", QStringList() << "cpu" << "get" << "name");
process.waitForFinished(); // 等待命令执行完毕
cpuInfo = process.readAllStandardOutput();
#elif defined(Q_OS_LINUX)
QFile file("/proc/cpuinfo");
if (file.open(QIODevice::ReadOnly | QIODevice::Text)) {
while (!file.atEnd()) {
QString line = file.readLine();
if (line.startsWith("model name")) {
cpuInfo = line;
break;
}
}
file.close();
}
#endif
return cpuInfo;
// return getWMIC("wmic cpu get processorid");
}
我在cmd中实验是有输出的:
程序一直获取不到:
我用你的代码是可以读到的.你可以把stdout和stderror都输出看看.或者下个断点看看cpuInfo是不是空.
cpuInfo = process.readAllStandardOutput();
cpuInfo += process.readAllStandardError();
嗯,不知道为什么,我在我笔记本上试也是正常输出的,诶,不用它了
Output和Error都是空的😅