Dear Gurus,
How I can get the OS of the current application runnings
Thankx
Dinesh Asanka
Printable View
Dear Gurus,
How I can get the OS of the current application runnings
Thankx
Dinesh Asanka
check the GetVersionEx API
HTH
cksiow
http://vblib.virtualave.net - share our codes
If you are using WindowsNT then the following will return the OS.
environ("OS")
if it returns nothing then the OS is windows95
Private Type MYVERSION
lMajorVersion As Long
lMinorVersion As Long
lExtraInfo As Long
End Type
Private Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128 ' Maintenance string for PSS usage
End Type
'// Windows Version constants
Private Const VER_PLATFORM_WIN32s = 0
Private Const VER_PLATFORM_WIN32_WINDOWS = 1
Private Const VER_PLATFORM_WIN32_NT = 2
'// Windows Version Declaration
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (ByRef lpVersionInformation As OSVERSIONINFO) As Long
'// Windows Version Function
Private Function WindowsVersion() As MYVERSION
Dim myOS As OSVERSIONINFO, WinVer As MYVERSION
Dim lResult As Long
myOS.dwOSVersionInfoSize = Len(myOS) 'should be 148
lResult = GetVersionEx(myOS)
'Fill user type with pertinent info
WinVer.lMajorVersion = myOS.dwMajorVersion
WinVer.lMinorVersion = myOS.dwMinorVersion
WinVer.lExtraInfo = myOS.dwPlatformId
WindowsVersion = WinVer
End Function
Private Sub Form_Load()
Dim myVer As MYVERSION
Dim strTmp As String
Dim vers As Long
myVer = WindowsVersion()
If myVer.lMajorVersion = 4 Then
If myVer.lExtraInfo = VER_PLATFORM_WIN32_NT Then
strTmp = "Windows NT version : "
ElseIf myVer.lExtraInfo = VER_PLATFORM_WIN32_WINDOWS Then
vers = myVer.lMinorVersion
If vers <= 10 Then
strTmp = "Windows 98 version : "
Else
strTmp = "Windows 95 version : "
End If
End If
Else
strTmp = "Windows version : "
End If
Text1.Text = strTmp & myVer.lMajorVersion & "." & myVer.lMinorVersion
End Sub
Iouri Boutchkine
[email protected]