首页 > 解决方案 > 检查windows10是否安装了C++

问题描述

我必须检查机器上是否安装了 windows 10,因为我的程序只支持 win10。

我尝试了这个在stackoverflow上已经找到的解决方案。

    if (IsWindowsVersionOrGreater(10, 0, 0))
    {
        //nothing
    }
    else
    {
        MessageBox(NULL, "Your OS is not supported.", "Version Not Supported", MB_OK);
    }

它给了我Your OS is not supported,但为什么?我理解错了吗?有没有其他解决方案可以做到这一点?

此致。

标签: c++windowsc++17version

解决方案


你看过 GetVersionEx() 函数和 OSVERSIONINFOEX 结构吗?

可能的用法:

void print_os_info()
{
    OSVERSIONINFOEX info;
    ZeroMemory(&info, sizeof(OSVERSIONINFOEX));
    info.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);

    GetVersionEx(&info);

    printf("Windows version: %u.%u\n", info.dwMajorVersion, info.dwMinorVersion);
}

这是答案的来源: Get OSVersion in Windows using C++


推荐阅读