Genexus y McAfee Antivirus


La semana pasada instalamos una nueva versión del McAfee Antivirus (ViruScan Enterprise v8.5.0i). En realidad, ya hace bastante mas que solo controlar los virus, sino que controla varios tipos de ataques que pueda producirse.

A partir de la instalación del mismo, empezamos a tener un comportamiento no deseado cuando desarrollábamos con Genexus: al especificar un objeto, nos mostraba el diagrama de especificación de todos los objetos que se habían especificado antes mas el objeto recién especificado. Si un objeto se especificaba mas de una vez, aparecía repetido.

Esto hacia bastante difícil trabajar.

Al principio nos pareció que podía ser causado por una nueva instalación de un Upgrade de Genexus que habíamos realizado en esos días, pero luego comprobamos que se producia tanto en GX 9.0 como en GX 8.0, con lo que descartamos esa hipotesis.

Estudiando el problema en mas detalle, vimos que lo que quedaba bloqueado era el archivo gxnavig.00x (00x es el numero del modelo). Si se lo queria borrar a mano, no se podia.
Si podiamos vaciarlo (cosa que nos permitio trabajar unos días hasta encontrar la solución definitiva). Entrabamos con el Notepad y le borrábamos todo el contenido.

En el PC cliente no quedaba ningún handle con el archivo abierto. Estudiando un poco mas con el utilitario de sysinternal Process Explorer, pudimos ver que en el servidor donde estaba la KB, quedaban abiertos algunos archivos por el proceso McShield.exe. Lo raro, es que aun tenia bloqueados archivos de gente que hacia mas de una semana que estaba de licencia!.

Modificamos las policy de McAfee clasificando a Genexus como proceso de bajo riesgo y luego que los proceso de bajo riesgo, no analicen en tiempo real los archivos con extensión 00x y con eso se solucionó el problema.

No se que diferencia puede haber en la forma en que se abren/cierran estos archivos con los demás (por ejemplo los *.dat y *.idx que no quedan bloqueados).

SUGERENCIA: Podría mejorarse en GeneXus, que si intenta borrar un archivo (gxnavig.00x) y por algún motivo no puede hacerlo, podría mostrar un mensaje. Eso nos hubiera ayudado a detectar en forma mas rápida este error.

Comentarios

Entradas más populares de este blog

El Sordo

StackOverflow Documentation

Codigo simple