jueves, 26 de junio de 2008

"El Truco del Almendruco" en la depuración con "vsjitdebugger.exe"

En más de una ocasión hemos tenido que depurar de una forma un tanto compleja, o al menos no de la forma habitual, es decir ni depurando directamente desde Visual Studio ni atachando procesos, ¡seguro que si!  Más concretamente, y para el caso que nos ocupa pondré un para de ejemplos muy prácticos.

Durante estas semanas junto con un compañero de trabajo hemos estado realizando Setups "más o menos complejos" y, bueno, así es como uno se da cuenta de los problemas y de como surgen las necesidades, jejeje...

Durante estos Setups las "Customs Acctions", clases específicas para el tratamiento de acciones durante la instalación/desinstalación, surge la necesidad de depurarlas, y la pregunta es ¿cómo?. Alguno dirá; pues con MessageBox.Show(....), Console.WriteLine(...), etc.. si este mecanismo siempre funciona, pero es bastante más tedioso.

Pues nada de eso, a partir de ahora ¡y claro, para aquel que no conozca este truquito!, será mucho más fácil.

Pasos:

Debería quedar así:

Esta configuración hará que nuestro depurador; "Visual Studio Just-In-Time Debugger" se inicie cada vez que se ejecute el comando Msiexec.exe

Si ahora sobre nuestro proyecto de Setup de Visual Studio, hacemos "click" con el botón derecho de ratón y pulsamos "Install",  "Tachaaaaannnnnn" ¡a depurar!, claro, previamente estableceremos los puntos de ruptura (Break Points) adecuados, :-D.

De la misma forma, si queremos instalar un Servicio Windows en la consola de servicios y utilizamos "InstallUtil" repetiremos los pasos sustituyendo MsiExec.exe por "InstallUtil.exe".

Una vez que hayamos finalizado la depuración, Modificar la key "MsiExed.exe" para que no se ejecute siempre, de manera que quede algo como; " _***_MsiExec.exe". De forma similar para InstallUtil.exe, por ejemplo _***_InstallUtil.exe.

Tambíen podríamos sustituir  nuestro depurador "vsjitdebugger.exe" por cualquier otro disponible en nuestra máquina.

 

Por supuesto, gracias a Javier,(si, el de las cervecitas, jejeje...) por tal descubrimiento.

 

¡Buscando la fácil senda en el desarrollo!
Juanlu

Etiquetas: , ,


Comments: Publicar un comentario



<< Home

This page is powered by Blogger. Isn't yours?