2

我在QT中有以下方法:

QString getHDDSerial() {
  DWORD dwVolSerial;
  BOOL bIsRetrieved;
  bIsRetrieved = GetVolumeInformation(L"C:\\", NULL, NULL, &dwVolSerial, NULL, NULL, NULL, NULL);

  qDebug() << dwVolSerial;
  if (bIsRetrieved) {
      return dwVolSerial;
  } else {
      return "error";
  }
}

如何将 dwVolSerial 作为 QString 返回?

4

2 回答 2

1

我能够做到这一点:

return QString::number(dwVolSerial);
于 2014-06-11T06:35:05.223 回答
1

如果您想像dir控制台命令那样格式化序列号(即 like 2210-0DD0),您可以使用以下代码:

qDebug() << QString().sprintf("%04X-%04X", 
                              HIWORD(dwVolSerial), LOWORD(dwVolSerial));

这是适用于 Qt的答案。

于 2014-06-15T23:47:14.280 回答