Blog Archive

 

 About this blog

 
About this blog 
Your Name 
Course-Schedule

Daniel A. Seara

Depurar INCLUSIVE el código del .Net Framework

2008-01-22 22:05:33 por Daniel A. Seara

En octubre del 2007, Scott Guthrie anunció que se iba a disponer la posibilidad de depurar el código incluyendo el propio escrito por Microsoft para gran parte del .Net Framework.

Esta opción ya está disponible siguiendo estos pasos:

 

Primero hay que instalarse un parche para que Visual Studio admita esta funcionalidad.

Luego te abres Visual Studio 2008, y en Tools Options, lo pones así:

Luego, en las opciones de Symbols, apuntas a este origen: http://referencesource.microsoft.com/symbols

También define una ubicación para el caché local (esto te ahorrará mucho tiempo)

Y asegúrate de no tener habilitada la opción de buscar en esa ubicación (esta es de mi propia cosecha J)

La opción de cargar los símbolos cuando el diálogo se cierra te permite asegurarte que todo está correcto (y descargar todo de inicio que es bastante).

Cuando confirmes, Pepe Seguridad aparecerá por allí (que bien que hace):

Y a depurar!

Por ejemplo, esta rutina permita cargar una lista de directorios en un control, treeview cuando se expande el nodo que corresponde a un disco:

Ponemos un punto de interrupción….

Ejecutamos y, cuando llega a dicho punto, llamamos a Step Into:

Y estamos en el código del Framework! (que no lo escribí yo, se nota porque:

  1. Está en C#
  2. Los comentarios están en Ínglish (que a veces los pongo pero trato que cuando publico por aquí no salgan).

Y un truco más

Una vez hayas depurado en una oportunidad, puedes deshabilitar la referencia a los símbolos de http://referencesource.microsoft.com/symbols

Eso hará que Visual Studio no se ponga más lento… pero deberás recordar recargarlos cada tanto por si los actualizan! J

Detalle final.

No digas nada, pero parece ser que en Microsoft tienen considerada la posibilidad de ejecutar el Net Framework en otros sistemas operativos… J

 

Comments

No Comments
Leave a Comment
(*) Title:
(*) Name:
Your URL:
(*) Comments:
Follow us on: