Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hello,
Is there a simple way to know programatically if the user's computer runs Vista or XP? Thanks a lot Avi |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Haven't tested on Vista as I don't have it, but see what this shows:
Option Explicit Private Const VER_PLATFORM_WIN32_NT = 2 Private Const VER_PLATFORM_WIN32_WINDOWS = 1 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 Private Declare Function GetVersionEx Lib "kernel32" _ Alias "GetVersionExA" _ (lpVersionInformation As OSVERSIONINFO) As Long Function getWindowsVersion() As String Dim TheOS As OSVERSIONINFO Dim strCSDVersion As String TheOS.dwOSVersionInfoSize = Len(TheOS) GetVersionEx TheOS Select Case TheOS.dwPlatformId Case VER_PLATFORM_WIN32_WINDOWS If TheOS.dwMinorVersion = 10 Then getWindowsVersion = "Windows 98 version: " Else getWindowsVersion = "Windows 95 version: " End If Case VER_PLATFORM_WIN32_NT getWindowsVersion = "Windows NT version: " End Select 'Extract the Additional Version Information from 'the string with null char terminator If InStr(TheOS.szCSDVersion, Chr(0)) < 0 Then strCSDVersion = ": " & Left$(TheOS.szCSDVersion, _ InStr(TheOS.szCSDVersion, Chr(0)) - 1) Else strCSDVersion = "" End If getWindowsVersion = getWindowsVersion & TheOS.dwMajorVersion & "." & _ TheOS.dwMinorVersion & _ " (Build " & TheOS.dwBuildNumber & strCSDVersion & ")" End Function Sub test() MsgBox getWindowsVersion(), , "Windows version" End Sub RBS "avi" wrote in message ... Hello, Is there a simple way to know programatically if the user's computer runs Vista or XP? Thanks a lot Avi |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
This reports it correctly on mine but not tested on other systems mysystem = Environ(13) Mike "avi" wrote: Hello, Is there a simple way to know programatically if the user's computer runs Vista or XP? Thanks a lot Avi |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Jun 14, 11:16 am, Mike H wrote:
Hi, This reports it correctly on mine but not tested on other systems mysystem = Environ(13) Mike "avi" wrote: Hello, Is there a simple way to know programatically if the user's computer runs Vista or XP? Thanks a lot Avi Hello Avi, Another method is to use "Application.Version". Xp returns "11.0", and Vista "12.0" Sincerely, Leith Ross |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I bet you meant: Application.OperatingSystem
Application.version will give the version of excel (11 is xl2003, 12 is xl2007 (I bet)). Leith Ross wrote: <<snipped Another method is to use "Application.Version". Xp returns "11.0", and Vista "12.0" Sincerely, Leith Ross -- Dave Peterson |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks for the tip; nice and simple.
RBS "Dave Peterson" wrote in message ... I bet you meant: Application.OperatingSystem Application.version will give the version of excel (11 is xl2003, 12 is xl2007 (I bet)). Leith Ross wrote: <<snipped Another method is to use "Application.Version". Xp returns "11.0", and Vista "12.0" Sincerely, Leith Ross -- Dave Peterson |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
If it helps any, on my 32-bit Vista Ultimate Edition system,
Application.OperatingSystem returns this... Windows (32-bit) NT 6.00 Rick "Dave Peterson" wrote in message ... I bet you meant: Application.OperatingSystem Application.version will give the version of excel (11 is xl2003, 12 is xl2007 (I bet)). Leith Ross wrote: <<snipped Another method is to use "Application.Version". Xp returns "11.0", and Vista "12.0" Sincerely, Leith Ross -- Dave Peterson |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
If you run it on 64 bit system it return also 32 bit
I have report this bug -- Regards Ron de Bruin http://www.rondebruin.nl/tips.htm "Rick Rothstein (MVP - VB)" wrote in message ... If it helps any, on my 32-bit Vista Ultimate Edition system, Application.OperatingSystem returns this... Windows (32-bit) NT 6.00 Rick "Dave Peterson" wrote in message ... I bet you meant: Application.OperatingSystem Application.version will give the version of excel (11 is xl2003, 12 is xl2007 (I bet)). Leith Ross wrote: <<snipped Another method is to use "Application.Version". Xp returns "11.0", and Vista "12.0" Sincerely, Leith Ross -- Dave Peterson |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
It is always better to use the Set variable name instead of its location in
the list (which could be different between different computers). For the operating system, that would be 'OS' as in... mysystem = Environ("OS") However, this only return Windows_NT whereas the Application.OperatingSystem statement mentioned elsewhere in this thread returns this.. Windows (32-bit) NT 6.00 which contains a little extra information. By the way, if you ever want to see the various variable (names, for use in the Environ statement, and settings), bring up a Command Prompt window (found in All Programs, Accessories I think), type SET and hit the Enter key. Rick "Mike H" wrote in message ... Hi, This reports it correctly on mine but not tested on other systems mysystem = Environ(13) Mike "avi" wrote: Hello, Is there a simple way to know programatically if the user's computer runs Vista or XP? Thanks a lot Avi |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Hide all windows while macro is running | Excel Programming | |||
i have two windows xp running on my pc and seem to con flict with | Excel Discussion (Misc queries) | |||
Detecting if workbook running in IE or in Excel | Excel Programming | |||
Running windows command from a VB code | Excel Programming | |||
running windows system commands in VBA | Excel Programming |