¿Por qué dos resultados diferentes, mientras que el manejo de la misma excepción en C #?
Pregunta
I manejado de la misma excepción en dos programas, pero me dio los resultados diferentes. No sé por qué.
el primer resultado es el que el programa no puede Caught
Scapshot1: www.freeimagehosting.net/uploads/e2b37433a3.png
y la segunda es la que el programa tenga éxito a atrapado
Scapshot2: www.freeimagehosting.net/uploads/6ab7564999.png
¿Por qué recibí una diferente tal?
Solución
Bueno, en realidad no han proporcionado mucha contexto. Lo que debe verificar:
- ¿Son el mismo tipo de aplicación (WPF, WinForms, Silverlight, de consola, etc)?
- ¿Están utilizando la misma versión de .NET?
- ¿Se están ejecutando en la misma versión de Windows?
- ¿Tienen el mismo código para reaccionar a las excepciones no controladas?
Otros consejos
Por lo que puedo ver, # 1 en el que se están ejecutando en el depurador. En # 2 no está.
De hecho, asumiré la excepción es exactamente el mismo, ya que el mensaje es el mismo. No hay ninguna diferencia, OIA.
No estoy seguro si entiendo, parece que es lo mismo, pero erro
- pic1 - error no controlado
- pic2 - Error manejado
proporcione más información
El comportamiento del depurador en la cara de excepciones puede variar mucho.
No se puede cambiar después de Application.UnhandledExceptionMode Application.Run () fue llamado, por lo que claramente no es el que va a capturar la excepción.
Lo que deja AppDomain.UnhandledException. Sí, el depurador se interrumpirá en la excepción antes de que se levantó ese evento. buena característica, que le permitirá depurar la razón por la excepción. Simplemente presione F5 para continuar la ejecución de activar el controlador de eventos. No hay evidencia de que el uso del depurador en la segunda captura de pantalla, parece que empezaron con Ctrl + F5.