VB 6应用程序如何确定它是否在Windows 10上运行?

时间:2016-06-29 14:26:32

标签: windows winapi vb6 windows-10

我希望我的VB 6应用程序能够检测并显示正在运行的Windows版本。

我在this code尝试了another Stack Overflow question,但它对我不起作用。它在旧版Windows(如Windows XP和Vista)上显示正确的版本号,但无法检测到Windows 10.出于某种原因,它表示Windows 10是Windows 8。

我认为Windows 10的主要版本为“10”,次要版本为“0”,this chart of Windows version numbers确认它的确存在。那么,为什么N函数实际上永远不会返回版本10.0?

如何准确区分Windows 8,Windows 8.1和Windows 10?

1 个答案:

答案 0 :(得分:0)

作为GetVersionEx的上述清单解决方案的附件,请在Cody的code中为osv.dwVerMajor的案例6块之后放置以下

    Case 10 'Note: The following works only with updated manifest
       Select Case osv.dwVerMinor
       Case 0
            GetWindowsVersion = "Windows 10/Server 2016"
        Case Else
        End Select

来自MSDN的消息:“Windows 8.1之后的版本可能会更改或无法使用GetVersionEx。”但是,值得关注的是。