WMI 类型转换问题

WMI types conversion issue

我想获得 ram 插槽内存并将其转换为 GB。我使用 WMI,Win32_PhysicalMemory class 容量 属性。

代码:

QString userRAMCapacity = QString::fromWCharArray(ramCapacity.bstrVal);

使用 Qt 函数时 -

QString::fromWCharArray(ramCapacity.bstrVal); 

我获得了正确的 ram 插槽内存容量(以字节为单位),但我无法将其转换为 GB。我尝试使用另一个功能 -

QString::number(ramCapacity.uintVal), 

它可以工作,但显示错误的内存量。请帮助解决这个问题。提前致谢。

QString 有 toInt() 方法,您需要在进行任何数学运算之前应用该方法:

auto result = QString::fromWCharArray(ramCapacity.bstrVal). toLongLong() / (1024) / (1024) / (1024);