2009-12-21 14 views
6

Si mi aplicación falla, una biblioteca de Microsoft Visual C++ Runtime Library "Runtime Error!" ocurre.Deshabilitar Microsoft Visual C++ Runtime Error

El texto del mensaje es:
Esta aplicación ha solicitado que el tiempo de ejecución finalice de forma inusual.
Póngase en contacto con el equipo de soporte de la aplicación para obtener más información.

Sé que tengo que resolver todos estos problemas, pero me imagino que este error no apareció en el pasado. ¿Existe una opción en Visual Studio 2005 para habilitar/deshabilitar tal error (manejo) ?. En su lugar, espero que la aplicación simplemente se bloquee/salga y ofrezca un Informe de errores de Microsoft Windows.

+0

espero que su programa tiene afecta a algunos efectos secundarios que ahora es inválida verso de los cambios del compilador y comenzó dan mensajes de error. –

Respuesta

9

Este mensaje de error aparece si no se maneja una excepción y se llama a unexpected() o si una excepción se escapa de un destructor durante el desenrollado de la pila y se llama al terminate(). Ambos conducen a llamar al abort() y su implementación abort() muestra el cuadro de mensaje. Este comportamiento es por diseño en VS2k3, VS2k5 y VS2k8. Es realmente molesto, especialmente en aplicaciones destinadas a funcionar sin intervención humana (como compilaciones diarias, por ejemplo).

Puede solucionar este problema: utilice catch(...) para detectar todas las excepciones en el nivel superior y configure su propio controlador terminate() utilizando set_terminate().

0

uso:

_set_abort_behavior(0, _WRITE_ABORT_MSG); 
Cuestiones relacionadas