日期:2014-05-17 浏览次数:21382 次
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 Mellinnium"
                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
ver | find "5.0" >nul && (echo win2000)
ver | find "5.1" >nul && (echo winxp)
ver | find "5.2" >nul && (echo win2003)
ver | find "6.0" >nul && (echo vista)
ver | find "6.1" >nul && (echo win7)