抄一段代码给你。
QString getMachineId()
{
#ifdef Q_OS_LINUX
    QFile file;
    file.setFileName("/var/lib/dbus/machine-id");
    if (!file.open(QIODevice::ReadOnly)) {
        file.setFileName("/etc/machine-id");
        if (!file.open(QIODevice::ReadOnly)) {
            return QString();
        }
    }
    return QString::fromLocal8Bit(file.readAll()).trimmed();
#elif defined(Q_OS_WIN)
    QSettings m("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography",
                QSettings::NativeFormat);
    return m.value("MachineGuid").toString().trimmed();
#elif defined(Q_OS_OPENBSD)
    QFile file;
    file.setFileName("/etc/machine-id");
    if (!file.open(QIODevice::ReadOnly)) {
        return QString();
    }
    return QString::fromLocal8Bit(file.readAll()).trimmed();
#elif defined(Q_OS_MAC)
#endif
    return QString();
}
【 在 scanworld (臭蛋超人) 的大作中提到: 】
:     QString lireReg(const QString & poQStr = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography");
:     QSettings oQSettings(poQStr, QSettings::NativeFormat);
:     return oQSettings.value("MachineGuid",QVariant()).toString();
: ...................
--
FROM 110.81.13.*