Option ExplicitPrivate Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" _
(lpVersionInformation As OSVERSIONINFOEX) As LongPrivate Declare Function DllGetVersion Lib "Shlwapi.dll" (dwVersion As DllVersionInfo) As LongPrivate Type OSVERSIONINFOEX
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
wServicePackMajor As Integer
wServicePackMinor As Integer
wSuiteMask As Integer
wProductType As Byte
wReserved As Byte
End TypePrivate Type DllVersionInfo
cbSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
End Type'used for platform id
Const VER_PLATFORM_WIN32s = 0 'win 3.x
Const VER_PLATFORM_WIN32_WINDOWS = 1 'win 9.x
Const VER_PLATFORM_WIN32_NT = 2 'win nt,2000,XP
'used for product type
Const VER_NT_WORKSTATION = 1
Const VER_NT_SERVER = 3
'used for suite mask
Const VER_SUITE_DATACENTER = 128
Const VER_SUITE_ENTERPRISE = 2
Const VER_SUITE_PERSONAL = 512Private Const INFINITE = &HFFFFFFFF
Private Const NORMAL_PRIORITY_CLASS = &H20
Private Const WAIT_TIMEOUT = &H102&Public Function GetIeVer() As String
Dim VersionInfo As DllVersionInfo VersionInfo.cbSize = Len(VersionInfo)
Call DllGetVersion(VersionInfo)
GetIeVer = VersionInfo.dwMajorVersion & "." & VersionInfo.dwMinorVersion
End FunctionPublic Function GetOSVer() As String
Dim osv As OSVERSIONINFOEX osv.dwOSVersionInfoSize = Len(osv)
If GetVersionEx(osv) = 1 Then
Select Case osv.dwPlatformId
Case Is = VER_PLATFORM_WIN32s
GetOSVer = "Windows 3.x"
Case Is = VER_PLATFORM_WIN32_WINDOWS
Select Case osv.dwMinorVersion
Case Is = 0
If InStr(UCase(osv.szCSDVersion), "C") Then
GetOSVer = "Windows 95 OSR2"
Else
GetOSVer = "Windows 95"
End If
Case Is = 10
If InStr(UCase(osv.szCSDVersion), "A") Then
GetOSVer = "Windows 98 SE"
Else
GetOSVer = "Windows 98"
End If
Case Is = 90
GetOSVer = "Windows Me"
End Select
Case Is = VER_PLATFORM_WIN32_NT
Select Case osv.dwMajorVersion
Case Is = 3
Select Case osv.dwMinorVersion
Case Is = 0: GetOSVer = "Windows NT 3"
Case Is = 1: GetOSVer = "Windows NT 3.1"
Case Is = 5: GetOSVer = "Windows NT 3.5"
Case Is = 51: GetOSVer = "Windows NT 3.51"
End Select
Case Is = 4: GetOSVer = "Windows NT 4"
Case Is = 5
Select Case osv.dwMinorVersion
Case Is = 0 'win 2000
Select Case osv.wProductType
Case Is = VER_NT_WORKSTATION
GetOSVer = "Windows 2000 Professional"
Case Is = VER_NT_SERVER
Select Case osv.wSuiteMask
Case Is = VER_SUITE_DATACENTER
GetOSVer = "Windows 2000 DataCenter Server"
Case Is = VER_SUITE_ENTERPRISE
GetOSVer = "Windows 2000 Advanced Server"
Case Else
GetOSVer = "Windows 2000 Server"
End Select
End Select
Case Is = 1 'win XP or win .NET server Select Case osv.wProductType
Case Is = VER_NT_WORKSTATION 'win XP
If osv.wSuiteMask = VER_SUITE_PERSONAL Then
GetOSVer = "Windows XP Home Edition"
Else
GetOSVer = "Windows XP Professional"
End If
Case Else
If osv.wSuiteMask = VER_SUITE_ENTERPRISE Then
GetOSVer = "Windows .NET Enterprise Server"
Else
GetOSVer = "Windows .NET Server"
End If
End Select
End Select
End Select
End Select
End If
End FunctionPrivate Sub Form_Load()
lblOSVer.Caption = GetOSVer
lblIEVer.Caption = GetIeVer
Me.Show
End Sub 觉得好就给分吧!
(lpVersionInformation As OSVERSIONINFOEX) As LongPrivate Declare Function DllGetVersion Lib "Shlwapi.dll" (dwVersion As DllVersionInfo) As LongPrivate Type OSVERSIONINFOEX
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
wServicePackMajor As Integer
wServicePackMinor As Integer
wSuiteMask As Integer
wProductType As Byte
wReserved As Byte
End TypePrivate Type DllVersionInfo
cbSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
End Type'used for platform id
Const VER_PLATFORM_WIN32s = 0 'win 3.x
Const VER_PLATFORM_WIN32_WINDOWS = 1 'win 9.x
Const VER_PLATFORM_WIN32_NT = 2 'win nt,2000,XP
'used for product type
Const VER_NT_WORKSTATION = 1
Const VER_NT_SERVER = 3
'used for suite mask
Const VER_SUITE_DATACENTER = 128
Const VER_SUITE_ENTERPRISE = 2
Const VER_SUITE_PERSONAL = 512Private Const INFINITE = &HFFFFFFFF
Private Const NORMAL_PRIORITY_CLASS = &H20
Private Const WAIT_TIMEOUT = &H102&Public Function GetIeVer() As String
Dim VersionInfo As DllVersionInfo VersionInfo.cbSize = Len(VersionInfo)
Call DllGetVersion(VersionInfo)
GetIeVer = VersionInfo.dwMajorVersion & "." & VersionInfo.dwMinorVersion
End FunctionPublic Function GetOSVer() As String
Dim osv As OSVERSIONINFOEX osv.dwOSVersionInfoSize = Len(osv)
If GetVersionEx(osv) = 1 Then
Select Case osv.dwPlatformId
Case Is = VER_PLATFORM_WIN32s
GetOSVer = "Windows 3.x"
Case Is = VER_PLATFORM_WIN32_WINDOWS
Select Case osv.dwMinorVersion
Case Is = 0
If InStr(UCase(osv.szCSDVersion), "C") Then
GetOSVer = "Windows 95 OSR2"
Else
GetOSVer = "Windows 95"
End If
Case Is = 10
If InStr(UCase(osv.szCSDVersion), "A") Then
GetOSVer = "Windows 98 SE"
Else
GetOSVer = "Windows 98"
End If
Case Is = 90
GetOSVer = "Windows Me"
End Select
Case Is = VER_PLATFORM_WIN32_NT
Select Case osv.dwMajorVersion
Case Is = 3
Select Case osv.dwMinorVersion
Case Is = 0: GetOSVer = "Windows NT 3"
Case Is = 1: GetOSVer = "Windows NT 3.1"
Case Is = 5: GetOSVer = "Windows NT 3.5"
Case Is = 51: GetOSVer = "Windows NT 3.51"
End Select
Case Is = 4: GetOSVer = "Windows NT 4"
Case Is = 5
Select Case osv.dwMinorVersion
Case Is = 0 'win 2000
Select Case osv.wProductType
Case Is = VER_NT_WORKSTATION
GetOSVer = "Windows 2000 Professional"
Case Is = VER_NT_SERVER
Select Case osv.wSuiteMask
Case Is = VER_SUITE_DATACENTER
GetOSVer = "Windows 2000 DataCenter Server"
Case Is = VER_SUITE_ENTERPRISE
GetOSVer = "Windows 2000 Advanced Server"
Case Else
GetOSVer = "Windows 2000 Server"
End Select
End Select
Case Is = 1 'win XP or win .NET server Select Case osv.wProductType
Case Is = VER_NT_WORKSTATION 'win XP
If osv.wSuiteMask = VER_SUITE_PERSONAL Then
GetOSVer = "Windows XP Home Edition"
Else
GetOSVer = "Windows XP Professional"
End If
Case Else
If osv.wSuiteMask = VER_SUITE_ENTERPRISE Then
GetOSVer = "Windows .NET Enterprise Server"
Else
GetOSVer = "Windows .NET Server"
End If
End Select
End Select
End Select
End Select
End If
End FunctionPrivate Sub Form_Load()
lblOSVer.Caption = GetOSVer
lblIEVer.Caption = GetIeVer
Me.Show
End Sub 觉得好就给分吧!
[Paths]
WinDir=C:\WINDOWS
WinBootDir=C:\WINDOWS
HostWinBootDrv=C[Options]
BootMulti=1
BootGUI=1
DoubleBuffer=1
AutoScan=1
WinVer=4.10.2222这下不用多说了吧!