检测Windows 10 OS构建次要版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检测Windows 10 OS构建次要版本相关的知识,希望对你有一定的参考价值。

我创建了一个蓝牙低能量库,由于an issue with Windows 10 Version 1709,仅适用于OS Build 16299.125及更高版本(在KB4054517更新中修复)。对于早期版本,它会导致BLE设备行为异常并给出错误的连接指示。

因此,我希望检查客户端计算机上是否存在此更新,并在版本过低时阻止库运行。

我跟着this SO answer,并使用RtlGetVersion()获得操作系统版本。但是,据我所知,返回结构中的任何字段都不包含构建版本的次要部分(例如'16299.125'中的'125'),AKA'更新构建版本'或UBR。

即使用扩展结构(RtlGetVersion())调用RTL_OSVERSIONINFOEXW也是如此。

是否有可靠的方法来获取OS版本的次要版本?

答案

此UBR值存储在DWORD HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion中的which you can query下的Registry中

enter image description here

以上是关于检测Windows 10 OS构建次要版本的主要内容,如果未能解决你的问题,请参考以下文章

Cordova 构建 android 失败!!! JDK 8('1.8.*')的要求检查失败!检测到的版本:9.0.1 在 Windows 10 中

C#程序员经常用到的10个实用代码片段

vscode代码片段建议bug

构建兼容8.1和10的Windows应用程序

高效Web开发的10个jQuery代码片段

如果没有首先构建新创建的发布分支,GitVersion不会碰到TeamCity中的开发分支构建的次要版本