2009-02-19 12 views
12

Una de las cosas que me encantaron de VB6 es que usted tenía la capacidad de decirle al entorno de desarrollo que rompa todos los errores sin importar el error que haya establecido arriba. ¿Es posible hacer lo mismo en VS2008 para que el depurador se detenga en cualquier error, incluso si ocurre dentro de una declaración try-catch?¿Puede configurar VS2008 para romper un error dentro de una declaración try-catch

El problema es particularmente difícil cuando procesa un archivo con 500 registros y falla en uno de ellos, quién sabe cuál. No desea modificar el código para que su contador se inicialice afuera. eso para el bucle - eso es descuidado a largo plazo. Solo quiere que el depurador sepa parar debido a algún ajuste que haya puesto en alguna parte.

Respuesta

22

Sí, vaya al menú "Test", seleccionar "excepciones ...", marque "Arrojado" de "Excepciones" Common Language Runtime

+1

Me ganaste por segundos =) – juan

7

Claro, pulse Ctrl + Alt + E para que aparezca la ventana de excepciones y marque la lanzado casilla de verificación en Excepciones Common Language Runtime

que detendrá la ejecución, abra el código fuente de donde se lanzó la excepción, y le dirá con una ventana de mensaje de qué error se trata, señalando la línea era arrojado.

3

En Visual Studio, puede ir a Depurar -> Excepciones ... y marcar la casilla de verificación a cualquier excepción en particular o una clase de excepciones que desea que VS rompa cuando se generan.

Existen cinco categorías de excepciones: C++, Common Language Runtime, Managed Debugging Assistants, Native Run-Time Checks y Win32. En su mayor parte, usted está interesado en los CLR, aunque si está haciendo interoperabilidad COM, es posible que desee algunos de los otros también.

4

Descubrí esa casilla de verificación de la que todos hablan durante la depuración de un proyecto en el trabajo una vez. Lo encendí y, de repente, recibí todas estas excepciones por todos lados. Resultó que los desarrolladores de otro equipo habían estado usando Try-Catch como máscara para condiciones fácilmente evitables (pero eran demasiado perezosos para atraparse a sí mismos). ¡MALO!

+0

+1 porque es gracioso pero no lo es. Me he encontrado con esto yo mismo. No es divertido. – Kibbee

Cuestiones relacionadas