Todoexpertos.com
http://www.todoexpertos.com
La respuesta está en Internet
Información de la pregunta
Título: Como saber la version de Windows
Experto: ljmartinezf
Valoración: 3
Fecha: 16/07/2001


Como saber la version de Windows
Hola, me llamo Jorge. Mi pregunta es la siguiente: Necesito saber el sistema operativo sobre el que se ejecuta mi aplicacion PB. es decir necesito diferenciar entre W95 / Nt /2000... La función de PB GetEnvironment(lenv_env) no me sirve pues no diferencia entre NT y 2000. He intentado llamar al API de Windows, por lo visto la función : Function boolean GetVersionEx (ref OSVERSIONINFO lpVersionInformation) library "kernel32" devuelve dentro de la estructura que se le pasa por referencia lo que necesito. El problema es que no la hago funcionar. Tambien he intentado sacar la información del registro de windows, pero no encuentro ningún valor que me aseguro lo que busco. ¿puedes ayuidarme? Gracias

Version
Hola, Yo hubiera hecho lo mismo que tu, usar GetEnvironment, pero supongo que la version de PB que usas debe ser anterior a Windows 2000. Es probable que con la version 8 de PB que acaba de salir te funcionara GetEnvironment, pero dudo que te arriesgues (yo tampoco lo haria). Llamar a funciones de la API de Windows puede ser complicado, mas que nada porque el mapeo de tipos de variables C a tipos PowerBuilder es dificil. Existe un documento en la Web de Sybase de acceso gratuito donde explica todos los detalles sobre el tema. Tendrias que consultar la definicion C de la estructura OSVERSIONINFO, e intentar crear una estructura PB equivalente. Existe otra opcion bastante mas sencilla, se trata de crear una DLL intermedia que acceda a la API de Windows, y llamarla desde PB pasandole argumentos sencillos. En la cabecera de la DLL que contenga tu funcion puedes importar las definiciones de tipos y funciones del API de Windows. Lo unico es haber usado alguna vez un compilador de C, el Visual C++ por ejemplo. Es probable que alguien haya tenido tu mismo problema y lo haya solucionado, por lo que podrias consultar los grupos de PB de Goggle, o las webs dedicadas a PB. En cuanto al registro, no se si existe alguna clave que informe de la version, ni idea. Saludos

Pregunta Finalizada. Valoración : 3
Bien. Una respuesta aceptable.


Volver al mensaje
http://www.todoexpertos.com/categorias/tecnologia-e-internet/programacion/power-builder/respuestas/41251/como-saber-la-version-de-windows