Here's an easy way to get OS information using the Windows Management Instrument (WMI):
Private Sub getWindowsInfo()
On Error Resume Next
Dim strComputername As String
Dim objWMIService As Object
Dim objQrySetting As Object
Dim objOS As Object
strComputername = "." ' Local computer
Set objWMIService =
GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputername
& "\root\cimv2")
Set objQrySetting = objWMIService.ExecQuery("SELECT * FROM
Win32_OperatingSystem")
For Each objOS In objQrySetting
MsgBox "OS Name: " & objOS.Name & vbCrLf & _
"Version: " & objOS.Version & vbCrLf & _
"Service Pack: " & objOS.ServicePackMajorVersion & "." &
objOS.ServicePackMinorVersion & vbCrLf & _
"OS Manufacturer: " & objOS.Manufacturer & vbCrLf & _
"Windows Directory: " & objOS.WindowsDirectory & vbCrLf & _
"Locale: " & objOS.Locale
Next
' Tidy up
Set objWMIService = Nothing
Set objQrySetting = Nothing
Set objOS = Nothing
End Sub