如何获得面向未来的用户友好操作系统版本?

时间:2013-02-18 09:50:03

标签: windows vb6

这个问题,How can I determine the Windows version from a VB 6 app,Cody Gray有一个非常有用的答案,它使用GetVersionEx和Select Case语句将Windows版本作为用户友好的字符串返回。

然而,给出的代码是有限的,因为所有返回值都是硬编码的,这意味着它不是未来的证明,并且每次新版本的Windows出现时都需要重写,例如Windows 8。

除了使用GetVersionEx和Select Case语句之外,是否还有其他选项可以检索用户友好的操作系统名称,这也是相对未来的证据?

1 个答案:

答案 0 :(得分:7)

WMI classes可用于提取所需数据,如下所示:

Public Function GetFriendlyOSVersion() As String
    Dim query As String
    query = "SELECT Caption FROM Win32_OperatingSystem"
    Dim results As Object
    Set results = GetObject("Winmgmts:").ExecQuery(query)
    Dim info As Object
    For Each info In results
        GetFriendlyOSVersion = info.Caption
    Next info
End Function