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
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