Como correr 2 upgrades diferentes de GeneXus en el mismo equipo.

Muchas veces es necesario tener instalados 2 upgrades de GeneXus o de los generadores en forma simultánea.

Por ejemplo a nosotros en Concepto, nos pasa que tenemos algunas KB en GeneXus 9.0 y el generador java, con el Upgrade 3 (ambientes de producción) y otras con Upgrade 4 (ambiente de desarrollo). Durante un período de varios meses, se testea en desarrollo el nuevo upgrade y luego se pasa a producción cuando ya conocemos (o solucionamos) la mayoria de los inconvenientes que puede traernos.

El problema que se plantea es: como hacer para mantener ambas instalaciones?
Cuando se ejecuta Genexus se corre el programa gxw32.exe, que luego llama al especificador y generadores de la versión que se instaló (o que se registró) último.

Lo que hacemos es tener instalado en dos directorios diferentes ambas versiones, por ejemplo

G:\GXW90\U3JavaU3 //Tiene el development environment U3 y Java U3.

G:\GXW90\U4JavaU4 //Tiene el development environment U4 y Java U4.

Para lograr esto, antes de instalar los upgrades se copian todos la instalación Genexus del directorio donde instala GeneXus al directorio donde se quiera guardar dicha instalación.

Después generamos archivos *.bat que tienen todo lo necesario para registrar la versión diferente en cada uno de los directorios donde esté instalado Genexus.

Por ejemplo:


if exist Winte32.exe winte32.exe /s
if exist Wgevfc32.exe Wgevfc32.exe /s
if exist Wgevfp32.exe Wgevfp32.exe /S
if exist Wgevb32.exe Wgevb32.exe /S
if exist Wgevbemb.exe Wgevbemb.exe /S
if exist Wgejv32.exe Wgejv32.exe /S
if exist Wgec32.exe Wgec32.exe /S
if exist WgeNET32.exe WgeNET32.exe /S
if exist wgecbl32.exe wgecbl32.exe /S
if exist wgerpg32.exe wgerpg32.exe /S
gxcomp.exe -s
gxwctrf.exe -s
regsvr32 gxweb.dll /s
regsvr32 xpwreader.dll /s
regasm /silent GXTHEMEEDITOR.EXE
regasm /silent WIZARDNEWMODEL.EXE
regasm /silent GXWSDLINSPECTOR.EXE
pause
start gxw32.exe nokb
pause
exit


Este archivo de comandos (es para GeneXus 9.0) debería adaptarse a la instalación, pues pueden tener problemas con path o con algunos nombres. Lo que hace es registrar todo lo necesario para que funcione tanto el especificador como los diferentes generadores y despues va a llamar a genexus sin ninguna KB abierta, para no producir problemas de abrir la ultima KB con una version equivocada de GeneXus.

Comentarios

Entradas más populares de este blog

La nefasta influencia del golero de Cacho Bochinche en el fútbol uruguayo

Aplicación monolítica o distribuida?

Funcionalidades de GeneXus que vale la pena conocer: DATE Constants.