You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过编程方式检测Windows 11系统?

Windows 11系统检测方法

问题说明

需要检测应用是否运行在Windows 11上,但遇到以下问题:

  • Version Helper APIs中没有针对Windows 11的专属接口
  • 不清楚IsWindowsXXOrGreater系列函数对应的版本参数
  • 使用RtlGetVersion时,返回的dwMajorVersion为10,无法区分Windows 10和Windows 11

可靠检测方案

Windows 11的主版本号(dwMajorVersion)仍为10,需通过**构建版本号(dwBuildNumber)**或官方新增的API来区分:

1. 使用官方Version Helper API(推荐)

从Windows 11 SDK起,官方新增了IsWindows11OrGreater()函数,直接调用即可完成检测:

#include <VersionHelpers.h>

if (IsWindows11OrGreater()) {
    // 当前运行在Windows 11及更高版本
} else {
    // 运行在其他Windows系统
}

如果你的开发环境SDK版本较低,未包含该函数,可以手动通过构建版本号实现等价逻辑。

2. 基于RtlGetVersion检查构建版本

修改你原有的代码,通过dwBuildNumber判断:Windows 11的最低构建版本为22000。

NTSTATUS(WINAPI *RtlGetVersion)(LPOSVERSIONINFOEXW);
OSVERSIONINFOEXW osInfo;

*(FARPROC*)&RtlGetVersion = GetProcAddress(GetModuleHandleA("ntdll"), "RtlGetVersion");

if (NULL != RtlGetVersion)
{
    osInfo.dwOSVersionInfoSize = sizeof(osInfo);
    RtlGetVersion(&osInfo);
    
    if (osInfo.dwMajorVersion == 10 && osInfo.dwBuildNumber >= 22000) {
        MessageBoxA(NULL, "运行在Windows 11系统", NULL, 0);
    } else if (osInfo.dwMajorVersion == 10) {
        MessageBoxA(NULL, "运行在Windows 10系统", NULL, 0);
    } else {
        MessageBoxA(NULL, "运行在其他Windows系统", NULL, 0);
    }
}

3. 使用VerifyVersionInfoW函数(官方推荐的兼容方式)

该函数是微软推荐的版本检测方法,可避免版本欺骗等兼容性问题:

#include <windows.h>

OSVERSIONINFOEXW osvi;
DWORDLONG dwlConditionMask = 0;

ZeroMemory(&osvi, sizeof(OSVERSIONINFOEXW));
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEXW);
osvi.dwMajorVersion = 10;
osvi.dwMinorVersion = 0;
osvi.dwBuildNumber = 22000;

// 设置检测条件:主版本=10,次版本=0,构建版本≥22000
VER_SET_CONDITION(dwlConditionMask, VER_MAJORVERSION, VER_EQUAL);
VER_SET_CONDITION(dwlConditionMask, VER_MINORVERSION, VER_EQUAL);
VER_SET_CONDITION(dwlConditionMask, VER_BUILDNUMBER, VER_GREATER_EQUAL);

if (VerifyVersionInfoW(&osvi, VER_MAJORVERSION | VER_MINORVERSION | VER_BUILDNUMBER, dwlConditionMask)) {
    // 运行在Windows 11及更高版本
}

内容的提问来源于stack exchange,提问作者Cesar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:05:20