我有一个 C CLI 程序在 Windows 7 中崩溃并生成此错误:
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
首先,我在某处读到它可能是assert
触发语句的原因,因此作为第一个措施,我将它们替换为 if 语句以捕获并记录任何潜在的失败断言。其次,我用语句喷洒代码printf
以查看程序退出的位置。第三,我特别确保代码不会在没有先记录退出的情况下退出任何地方。该程序是线程化的,因此发生了很多事情,但没有什么太复杂。
现在的问题是,我第二次收到错误时,它表明程序在我的printf
语句之外退出,所以我不知道它在哪里退出。
所以两个问题:
- 我怀疑我需要使用适当的调试器来查看有关退出的更多详细信息,如果是这样,哪个?
assert
除了陈述之外,还有其他关于这种错误的问题吗?我发现很多C++
关于这个错误的博客条目,但不是太多C
。
我正在使用 Visual C++ 2008 速成版。另外,我正在调用CMD.exe
.