WindowsVersionSP – Determine Windows version and NT service pack info

Private Type OSVERSIONINFO    dwOSVersionInfoSize As Long    dwMajorVersion As Long    dwMinorVersion As Long    dwBuildNumber As Long    dwPlatformId As Long    szCSDVersion As String * 128End TypePrivate Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" _    (lpVersionInformation As OSVERSIONINFO) As Long' Returns Version of Windows as a String' NOTE: Win95 returns "4.00", WIn98 returns "4.10"'' It also optionally returns the Windows NT Service Pack' version in the argument, if one is passedFunction WindowsVersionSP(Optional NTServicePack As Integer) As String    Dim osInfo As OSVERSIONINFO    osInfo.dwOSVersionInfoSize = Len(osInfo)    GetVersionEx osInfo    WindowsVersionSP = osInfo.dwMajorVersion & "." & Right$( "0" & Format$ _        (osInfo.dwMinorVersion), 2)      If osInfo.dwMajorVersion = 4 Then        If InStr(osInfo.szCSDVersion, "3") > 0 Then            NTServicePack = 3        ElseIf InStr(osInfo.szCSDVersion, "4") > 0 Then            NTServicePack = 4        ElseIf InStr(osInfo.szCSDVersion, "5") > 0 Then            NTServicePack = 5        ElseIf InStr(osInfo.szCSDVersion, "6") > 0 Then            NTServicePack = 6        Else            NTServicePack = 0        End If    End IfEnd Function

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: