2010-02-11 51 views
1

我使用的是由吴永伟制作的NVWA工具包中的debug_new工具。 http://wyw.dcweb.cn/奇怪的运行时错误,似乎与微软相关

我把它关闭了一次,以追踪一只现在已经修复的海森堡。但是,当我打开它,我的程序抛出一个奇怪的错误:

IT负载,但接受它退出,并在控制台上写任何输入之前:

“此应用程序已请求运行时终止它在不寻常的方式 请与应用程序的支持团队以获取更多信息

进程返回3段(0x3)执行时间:0.828s”

我如何调试?我不知道在代码上抛出错误是什么(因为使用调试器时它仍然以相同的方式退出,并且调试器报告调试器退出时没有错误为0)

编辑为那些不阅读标签:我正在使用C++,并在Windows上与MingW进行编译。

+0

除非您使用visual studio,否则该微软相关程序如何。 – mauris 2010-02-11 00:45:29

+0

这看起来不像MS错误消息,除非您将其中的一部分退出。 (并且错误消息是否拼写错误?)。 – 2010-02-11 00:50:26

+0

当我在google上输入短语时,我登陆了几个网站,指出这条消息是由微软的C++库引发的。似乎这个调试库(我从来没有设法在Linux上工作)调用一些微软的DLL。 – speeder 2010-02-11 00:50:38

回答

1

如果您正在Visual Studio调试器下运行,请转到Debug/Exceptions菜单并选中“C++ Exceptions”项的复选框 - 这将导致调试器在抛出异常时中断。

如果你的代码抛出了很多异常,并且你没有兴趣打开调试器,你可能需要为异常类型提供各种子选项(std:exceptionvoid等)被抛出。

+0

不,我没有使用VC++,并且GDB被设置为捕获所有异常,但由于任何奇怪的原因没有得到这个特定的异常。 – speeder 2010-02-11 02:23:32

+0

@speeder:您可能希望为您的问题添加关于您正在使用的确切工具集和平台的信息,因为答案似乎与工具密切相关。 – 2010-02-11 02:36:23

+0

它写在标签... Oo – speeder 2010-02-11 03:15:21

0

KB884538 - 尝试安装此修补程序。

+0

如何判断故障是我的还是MS? – speeder 2010-02-11 01:29:36

+0

好吧,我正在尝试,但微软没有帮助,该修补程序仅在要求时才可用,但链接已中断,经研究发现人们打电话给微软,但由于我在其他国家,我无法致电微软。 – speeder 2010-02-11 06:24:24