Qt是一个挺不错的跨平台开发工具,可有时候想获取一些系统(特别是Mac系统)基本信息却并不是那么手到擒来
比如本文想获取Mac,序列号等信息就花费了好一番工夫,特记录于此以备不时之需。
说明:以下代码经Qt 5.3测试通过
//获取序列号
QProcess proc;
QStringList args;
args << "-c" << "ioreg -rd1 -c IOPlatformExpertDevice | awk '/IOPlatformSerialNumber/ { print $3; }'";
proc.start( "/bin/bash", args );
proc.waitForFinished();
qDebug()<< proc.readAll(); //可以通过mid(1,11) 取得其中的序列号信息
//若是想获取硬件ID可把上面的 IOPlatformSerialNumber 改为 IOPlatformUUID 即可
//获取系统用户名,要#include <stdlib.h>
qDebug()<<getenv("USER");
//获取有效网卡,要#include <QtNetwork/QNetworkInterface>
QString strMac;
QList<QNetworkInte