我正在尝试使用 GetNativeSystemInfo api 来获取操作系统的体系结构(如果是 32 位或 64 位操作系统),但是当我尝试编译代码时,出现此错误:“GetNativeSystemInfo”未声明在这个范围内,我的代码有什么问题?
#include <QtCore/QCoreApplication>
#include <QDebug>
#include <windows.h>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
_SYSTEM_INFO sysinfo;
GetNativeSystemInfo(&sysinfo);
if (sysinfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_INTEL)
{
qDebug() << "win32";
}
if (sysinfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64)
{
qDebug() << "win64";
}
return a.exec();
}
最佳答案
使用定义为 0x0501
或更高版本的 _WIN32_WINNT
进行编译。
#define _WIN32_WINNT 0x0501
,或使用适当的编译器选项(对于 msvc,/D_WIN32_WINNT=0x0501
)。
查看更多信息 Using the Windows Headers (MSDN) .
关于c++ - 如何在 Qt 控制台应用程序中使用 GetNativeSystemInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14466543/