2010-02-03 24 views
22

Deseo establecer un punto de interrupción en el método estático System.Threading.SynchronizationContext :: SetSynchronizationContext para poder averiguar cuándo se está configurando el contexto de sincronización.Cómo establecer un punto de interrupción en un método dentro del marco .net

Sin embargo, no encuentro cómo establecer un punto de interrupción en un método para el que no tengo el código fuente.

(Esto debería ser fácil !, pero cuando intento para establecer el punto de interrupción en un método de la ventana de puntos de ruptura que reconoce el método.)

Respuesta

35

clic en Depurar, Windows, puntos de interrupción, haga clic en Nuevo, las vacaciones en la función, ingrese System.Threading.SynchronizationContext.SetSynchronizationContext, y haga clic en Aceptar.

Le dará una advertencia, que debe ignorar. Lo intenté, y funciona.


Editar por Ian Ringrose

que también tuvo que desactivar la opción "Habilitar Sólo mi código" establecer en la configuración de depuración.

Inicie Visual Studio 2008 y haga clic en Herramientas> Opciones> Depuración> General. Si se está ejecutando bajo el perfil de Visual Basic, tendrá que marcar la casilla en la parte inferior izquierda del cuadro de diálogo Opciones marcado "Mostrar todos los ajustes" antes de continuar (otros perfiles no tendrán esta opción). Establezca la siguiente configuración: Desactive la configuración "Habilitar simplemente mi código"

+0

que es lo que hice en el primer lugar, pero cuando ejecuto mi aplicación el punto de interrupción en el show con una el signo de advertencia amarillo y la información sobre herramientas indican que el punto de interrupción no se activará ya que los símbolos no están cargados. –

+0

No estoy seguro de por qué sucedería eso. Lo intenté yo mismo, y funcionó perfectamente. – SLaks

+0

gracias Ahora lo tengo funcionando, vea mi edición a su respuesta –

4

Es posible depurar las clases de .NET Framework. Todo lo que tiene que hacer es configurar VS.NET para que pueda descargar los símbolos de depuración para .NET Framework desde uno de los servidores de Microsoft.

Sin embargo, no podrá establecer un punto de interrupción dentro de un método .NET, pero podrá pasar a otro método de .NET framework y, al mismo tiempo, depurar, y una vez que haya entrado en ese punto. método, (y VS.NET ha abierto el archivo que contiene el método SetSynchronizationContext), podrá establecer un punto de interrupción en ese método.

Para obtener información sobre la forma de VS.NET configuración para que pueda depurar el marco .NET, haga clic en here

+0

+1 como el enlace me permitió resolver la configuración que tenía que encender, sin embargo, no necesitaba los símbolos de depuración. –

+0

Estoy usando VS2015, he elegido cargar solo símbolos específicos, de hecho he agregado solo un dll, pero descarga todos los símbolos ... – Legends

Cuestiones relacionadas