如何识别操作系统是WIN XP、WIN 2000、WIN 2003、WIN 98/95?
请高手指教!
通过调用什么API函数来实现?
我调用GETVERSION函数,只能得到一个数!
这些数代表什么意思啊?

解决方案 »

  1.   

    Public Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
    Public Type OSVERSIONINFO
            dwOSVersionInfoSize As Long
            dwMajorVersion As Long
            dwMinorVersion As Long
            dwBuildNumber As Long
            dwPlatformId As Long
            szCSDVersion As String * 128      '  Maintenance string for PSS usage
    End TypePublic Function IsWinXp() As Boolean
        Dim ovi As OSVERSIONINFO
        ovi.dwOSVersionInfoSize = Len(ovi)
        GetVersionEx ovi
    'WindowsXP 主版本号为5 次版本号为1    If ovi.dwMajorVersion = 5 And ovi.dwMinorVersion = 1 Then
           IsWinXp = True
        Else
           IsWinXp = False
        End If
    End Function其他操作系统同上一样
                   主版本号    次版本号
    windows 95      4           0
    windows 98      4           10
    windows Me      4           90
    windows NT 3.51 3           51 
    windows nt 4.0  4           0
    windows 2000    5           0
    windows xp      5           1
    windows 2003    5           2前三个操作系统 dwPlatformId=VER_PLATFORM_WIN32_WINDOWS
    后面的 dwPlatformId=VER_PLATFORM_WIN32_NT