2

我正在尝试使用 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();
}
4

1 回答 1

4

_WIN32_WINNT使用定义为0x0501或以上进行编译。

要么#define _WIN32_WINNT 0x0501,要么使用适当的编译器选项(/D_WIN32_WINNT=0x0501对于 msvc)。

在使用 Windows 标头 (MSDN)中查看更多信息。

于 2013-01-22T19:42:15.050 回答