home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 1_2002.ISO / Data / Zips / CODE_UPLOAD154932252001.psc / ChatterBox / basWhatOS.bas < prev    next >
Encoding:
BASIC Source File  |  2000-12-28  |  1.3 KB  |  45 lines

  1. Attribute VB_Name = "basWhatOS"
  2. Option Explicit
  3.  
  4. ' Determine which 32-bit Windows version is running.
  5. ' Actual code from Microsoft site. KB# Q189249
  6.  
  7. Public Declare Function GetVersionExA Lib "kernel32" _
  8.     (lpVersionInformation As OSVERSIONINFO) As Integer
  9.  
  10. Public Type OSVERSIONINFO
  11.     dwOSVersionInfoSize As Long
  12.     dwMajorVersion As Long
  13.     dwMinorVersion As Long
  14.     dwBuildNumber As Long
  15.     dwPlatformId As Long
  16.     szCSDVersion As String * 128
  17. End Type
  18.  
  19. Public Function GetVersion() As String
  20.     Dim OSInfo As OSVERSIONINFO
  21.     Dim retvalue As Integer
  22.     OSInfo.dwOSVersionInfoSize = 148
  23.     OSInfo.szCSDVersion = Space$(128)
  24.     retvalue = GetVersionExA(OSInfo)
  25.     With OSInfo
  26.         Select Case .dwPlatformId
  27.             Case 1
  28.                 If .dwMinorVersion = 0 Then
  29.                     GetVersion = "Windows 95"
  30.                 ElseIf .dwMinorVersion = 10 Then
  31.                     GetVersion = "Windows 98"
  32.                 End If
  33.             Case 2
  34.                 If .dwMajorVersion = 3 Then
  35.                     GetVersion = "Windows NT 3.51"
  36.                 ElseIf .dwMajorVersion = 4 Then
  37.                     GetVersion = "Windows NT 4.0"
  38.                 End If
  39.             Case Else
  40.                 GetVersion = "Failed"
  41.         End Select
  42.     End With
  43. End Function
  44.  
  45.