version del SO
Con el siguiente código puedes detectar la versión del SO en VB6:
* Primero crea un módulo con el siguiente código:
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
* Luego en tu formulario coloca la siguiente función:
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
* Primero crea un módulo con el siguiente código:
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
* Luego en tu formulario coloca la siguiente función:
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
Me da error y no se si es que debo declarar esta funcion en un modulo aparate o que?
Me dice que:
Error de compilacion
Los comentarios solamente deben aparecer después de end sub, end function o end property
Entonces como se haría?
Me dice que:
Error de compilacion
Los comentarios solamente deben aparecer después de end sub, end function o end property
Entonces como se haría?
He hecho la prueba copiando el código desde está página y funciona bien; de la única forma que te puede salir ese error es si has pegado también mis indicaciones en el código (* Luego en tu formulario coloca la...). ESO NO LO DEBES PONER!!!.
Ahora lo que yo necesito es complementar esto con un código para saber si un Windows 2000 es professional o server y si un windows Nt4 es WS o Server. También obtener el idioma del SO.
Cualquier ayuda al respecto me sería de mucha utilidad.
Cualquier ayuda al respecto me sería de mucha utilidad.
