c# - El depurador VS 2012 se bloquea cuando intento ver las variables de forma rápida
.net visual-studio-2012 (11)
Considere usar la herramienta Monitor de procesos para obtener un registro de las operaciones de archivos, redes, registros y procesos durante su investigación. Después de capturar el registro, puede ver a través de él e investigar la posible razón. O bien, puede enviarme su registro y lo investigaré de mi lado
http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Me he encontrado con un error extremadamente molesto esta tarde. He estado trabajando casualmente en la aplicación de consola en la que estoy trabajando desde hace un tiempo y sin ninguna razón, el depurador VS2012 comenzó a colgarse cuando comprobé cualquier variable. Se cuelga por 15-20 segundos, luego recibo el mensaje
La evaluación de la función está deshabilitada porque se agotó el tiempo de espera de una evaluación previa de la función
Si presiono F10, el depurador se desconecta y el proceso continúa. Se bloquea en casi todas las variables que están implícitamente declaradas
Estos son los pasos que he dado hasta ahora para resolver este problema.
Pasos que he tomado:
- Reiniciar VS
- Reiniciar la computadora
- Eliminado todos los puntos de interrupción
- Archivo eliminado ncb y suo
- El servidor de símbolos no está habilitado
- No se usa la ubicación de red, los archivos de usuario son locales, los archivos de proyecto son locales.
- Solo mi código habilitado / deshabilitado
- Asegurado Habilitar .NET Source Source Stepping NO está habilitado
- Las propiedades de paso garantizado están habilitadas
- Asegurado Habilitar la compatibilidad del servidor de origen no está habilitado
- Inicie visual studio con / SafeMode para suprimir extensiones
- Ventana de vigilancia borrada (estaba vacía de todos modos)
- Intentó cambiar la plataforma de destino a x64 y cualquier CPU
- Deshabilitar antivius
- Restablecer la configuración predeterminada de Visual Studio (devenv.exe / ResetSettings)
- Reinstalar VS
La aplicación que estoy depurando:
- Tipo: aplicación de consola C #
- Marco objetivo: 3.5
- Objetivo de la plataforma: x86
Por mi bien de salud, por favor ayuda.
EDITAR: Tengo Visual Studio Update 3, versión 11.0.60610.01
EDITAR: Las especificaciones de mi computadora
- Windows 7 Ultimate 64 bits
- Dell Optiplex 960
- Intel Core i5-2400 3.1 Ghz
- 4 GB de RAM
EDITAR: Probé en dos máquinas (el mismo código) sin la actualización visual studio 3, una que funciona, otra que no funciona.
EDITAR: una aplicación de consola simplificada creada con la misma configuración que contiene solo las siguientes líneas de código. Me estoy quedando sin problema cuando miro y luego desacoplo también. ¿Qué podría estar mal con mi máquina?
Esta es una aplicación simplificada que bloquea el depurador
static void Main(string[] args)
{
var _AppLocation = System.Reflection.Assembly.GetEntryAssembly().Location;
_AppLocation = _AppLocation.Substring(0, (_AppLocation.Length -
(System.Reflection.Assembly.GetEntryAssembly().GetName().Name.Length + 5)));
var directoryInfo = new DirectoryInfo(_AppLocation);
Console.ReadyKey(); //I break here, check the directoryinfo
}
EDIT 10/3/13: Esto todavía no se ha resuelto, la reinstalación de todo (oficina, marco, vs) no resolvió completamente el problema. Debe ser un error de vs2012 que está relacionado con os / hardware. Abriré un boleto en Microsoft y lo actualizaré si descubren algo útil.
EDIT 10/30/13: Este problema se ha reproducido en dos máquinas con diferente configuración de hardware. Todavía estoy en contacto con Microsoft para encontrar el problema. Parece algo relacionado con el framework / windows build / visual studio.
EDITAR 19/11/13: Todavía estoy en contacto con el equipo de escalación de Microsoft VS, aquí está el registro del monitor de procesos y el volcado visual del problema del estudio. http://sdrv.ms/1egpX4O
Este problema ocurre cuando el código está esperando que algunos subprocesos anteriores finalicen la ejecución, también intenta eliminar el archivo .suo y luego reiniciar Visual Studio.
Esto puede estar relacionado con Console.ReadKey () problemas / errores. http://blogs.microsoft.co.il/blogs/dorony/archive/2012/09/12/console-readkey-net-4-5-changes-may-deadlock-your-system.aspx ¿Los problemas persisten si Usas un método diferente de "pausa"?
Hice una búsqueda rápida en msdn y encontré esto: http://social.msdn.microsoft.com/Forums/vstudio/en-US/2055d3a0-56d9-4134-be23-09a91203e508/quickwatch-says-the-following-for-all-evaluations-function-evaluation-disabled-because-a-previous
Intente las siguientes sugerencias para verificar el resultado:
Haga clic en Herramientas | Opciones ... | Depuración | General, y desmarque la opción "Habilitar evaluación de propiedades y otras llamadas a funciones implícitas". Ingrese en (F11) el código para encontrar la causa raíz del "tiempo de espera". Reinicie la depuración.
Para obtener más información sobre el error de evaluación de la función, consulte: http://msdn.microsoft.com/en-us/library/ms234762(VS.80).aspx
Además, podríamos obtener más soluciones provisionales de Function Evaluation en el blog: http://blogs.msdn.com/greggm/archive/2005/11/18/494648.aspx
También puede sonar extraño, pero ¿tienes la última actualización de visual studio 2012?
Para mí tengo la configuración de guardar tiene la tuya, excepto para el bit x64. Esto siempre me dio dolores de cabeza en la programación ... Visual Stutio es de 32 bits, siempre y cuando sé, y seguramente hay una razón por la cual ... De todos modos, muestras el trabajo y no se cuelga ... No puedo decirte exactamente por qué sucedió, pero estoy seguro de que es un entorno de desarrollo relacionado con 64 bits.
Probé el código provisto.
VS2012 Ultimate funciona bien en la configuración de depuración y en la configuración de lanzamiento.
Probé en dos PC diferentes (desktop y Surface Pro)
También forcé la configuración x86 en lugar de AnyCPU.
Aquí está mi salida para la aplicación de prueba:
http://beehiver.jurion.me/debug%20working.png
Recomiendo desinstalar completamente todas las versiones VS y TODAS de .net y reinstalar. Parece ser un problema en su computadora portátil.
Solución encontrada en paralelo con el equipo Microsoft VS Escalation. Después de analizar el volcado de emergencia y el monitor de proceso, parece que el proceso del depurador VS 2012 verifica el certificado de la tienda para el certificado de la Autoridad Root de Microsoft.
Dado que ambas computadoras estaban en un entorno protegido sin Internet, ninguno de los dos se había conectado en línea. Por lo tanto, nunca descargaron la CA de Microsoft. Como la CA no se encontraba en la tienda, provocó que el depurador se bloqueara y bloqueara para el marco de destino 3.5 de forma específica.
Aquí está la solución de Microsoft VS Team para eludir esta comprobación al depurar: (Agregar en la aplicación app.config)
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>
¡Problema resuelto!
También hay algunas desventajas de VS. Por ejemplo, si abre dos VS al mismo tiempo, mientras escribe código, a veces no recibe respuesta y muestra "Guardar información de recuperación automática"
Tuve algunos problemas similares al ejecutar VS2012 con UAC (Control de cuentas de usuario) activado, y al instalar algunas extensiones, VisualStudio se une al proceso w3p.exe en ejecución, que funciona como se esperaba en 1 proceso de trabajo. Al permitir que existan varios procesos de trabajo, Studio no puede rastrear todos los hilos independientes y ahoga los datos que se leen como memoria dañada.
Tuve el mismo problema con Visual Studio 2015 (incluidas la Actualización 1 y la Actualización 2). Publicando mi solución (que presenté a MS) en caso de que alguien más tenga este problema.
Cada vez que intentaba utilizar QuickWatch en Visual Studio 2015 Enterprise, se bloqueaba el entorno de desarrollo. No puedo hacer clic en nada y me veo obligado a matar el proceso a través del Administrador de tareas. Parece que la ventana modal se abre detrás de ella.
Mi computadora es HP Spectre y tengo otro monitor conectado. Lo probé en ambos monitores.
La solución fue:
- Cambiar a un solo monitor
- Haga que el QuickWatch abra (lo cual hace)
- Moverlo (que debe guardar la posición de la ventana)
- Cierralo
- Enchufe el segundo monitor en
- Ahora cuando uso QuickWatch, se abrirá correctamente
Yo tuve el mismo problema. Supongo que tiene más que ver con la configuración del hardware. Recientemente actualicé de 4 GB de RAM a 8 GB con Vs 2012 y nunca he podido replicar el problema. Solía obtener constantemente este error con la configuración de hardware anterior.