Cómo determinar qué versión de Windows de 32 bits se utiliza

Seleccione idioma Seleccione idioma
Id. de artículo: 189249 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

Es posible que una aplicación necesite realizar tareas de forma diferente dependiendo de qué sistema operativo se ejecuta en el equipo. Este artículo muestra, por ejemplo, cómo diferenciar entre Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows NT 3.51, Microsoft Windows NT 4.0, Microsoft Windows 2000 y Microsoft Windows XP.

La función Win32 GetVersionEx devuelve información que un programa puede utilizar para identificar el sistema operativo. Entre esos valores son los números de revisión principales y secundarias y un identificador de plataforma. Con la introducción de Windows 98, ahora toma una evaluación lógica más compleja para determinar qué versión de Windows está en uso. La siguiente lista proporciona los datos necesarios para evaluar la estructura OSVERSIONINFO formada por la función GetVersionEx :
Contraer esta tablaAmpliar esta tabla
Windows 95Windows 98Windows Millennium EditionWindows NT 4.0Windows 2000Windows XP
PlatformID 1 1 1 2 2 2
Versión principal 4 4 4 4 5 5
Versión secundaria 0 10 90 0 0 1

Más información

Ejemplo paso a paso

  1. Inicie un nuevo proyecto EXE estándar en Visual Basic. Se creará Form1 de manera predeterminada.
  2. En el menú proyecto , agregue un Módulo estándar al proyecto.
  3. Insert the following code into Module1:
          Public Declare Function GetVersionExA Lib "kernel32" _
                   (lpVersionInformation As OSVERSIONINFO) As Integer
     
                Public Type OSVERSIONINFO
                   dwOSVersionInfoSize As Long
                   dwMajorVersion As Long
                   dwMinorVersion As Long
                   dwBuildNumber As Long
                   dwPlatformId As Long
                   szCSDVersion As String * 128
                End Type
     
                Public Function getVersion() As String
                   Dim osinfo As OSVERSIONINFO
                   Dim retvalue As Integer
     
                   osinfo.dwOSVersionInfoSize = 148
                   osinfo.szCSDVersion = Space$(128)
                   retvalue = GetVersionExA(osinfo)
     
                   With osinfo
                   Select Case .dwPlatformId
     
                    Case 1
                    
                        Select Case .dwMinorVersion
                            Case 0
                                getVersion = "Windows 95"
                            Case 10
                                getVersion = "Windows 98"
                            Case 90
                                getVersion = "Windows Millennium"
                        End Select
        
                    Case 2
                        Select Case .dwMajorVersion
                            Case 3
                                getVersion = "Windows NT 3.51"
                            Case 4
                                getVersion = "Windows NT 4.0"
                            Case 5
                                If .dwMinorVersion = 0 Then
                                    getVersion = "Windows 2000"
                                Else
                                    getVersion = "Windows XP"
                                End If
                        End Select
        
                    Case Else
                       getVersion = "Failed"
                End Select
     
                   End With
                End Function
    
    					
  4. Agregue la siguiente línea de código al evento Load de Form1:
    MsgBox GetVersion()
    					
  5. Ejecute el proyecto y observe que un cuadro de mensaje muestra la versión correcta de Windows.

Referencias

Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
92936Cómo obtener el número de versión de Windows 3.1 en VB con GetVersion

Propiedades

Id. de artículo: 189249 - Última revisión: viernes, 3 de septiembre de 2004 - Versión: 3.0
La información de este artículo se refiere a:
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Edición de aprendizaje
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic for Applications 5.0
Palabras clave: 
kbmt kbhowto KB189249 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 189249

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com