Article ID: 189249
Article Last Modified on 9/3/2004
| Windows 95 | Windows 98 | Windows Me | Windows NT 4.0 | Windows 2000 | Windows XP | |
|---|---|---|---|---|---|---|
| PlatformID | 1 | 1 | 1 | 2 | 2 | 2 |
| Major Version | 4 | 4 | 4 | 4 | 5 | 5 |
| Minor Version | 0 | 10 | 90 | 0 | 0 | 1 |
Public Declare Function GetVersionExA Lib "kernel32" _
(lpVersionInformation As OSVERSIONINFO) As Integer
Public Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Public Function getVersion() As String
Dim osinfo As OSVERSIONINFO
Dim retvalue As Integer
osinfo.dwOSVersionInfoSize = 148
osinfo.szCSDVersion = Space$(128)
retvalue = GetVersionExA(osinfo)
With osinfo
Select Case .dwPlatformId
Case 1
Select Case .dwMinorVersion
Case 0
getVersion = "Windows 95"
Case 10
getVersion = "Windows 98"
Case 90
getVersion = "Windows Millennium"
End Select
Case 2
Select Case .dwMajorVersion
Case 3
getVersion = "Windows NT 3.51"
Case 4
getVersion = "Windows NT 4.0"
Case 5
If .dwMinorVersion = 0 Then
getVersion = "Windows 2000"
Else
getVersion = "Windows XP"
End If
End Select
Case Else
getVersion = "Failed"
End Select
End With
End Function
MsgBox GetVersion()
92936 How to get Windows 3.1 version number in VB with GetVersion
Keywords: kbhowto KB189249