在Windows中,是否在应用程序“发生异常未知软件异常(0x40000015)”平均STATUS_FATAL_APP_EXIT? [英] In Windows, does "The exception unknown software exception (0x40000015) occurred in the application" mean STATUS_FATAL_APP_EXIT?

查看:844
本文介绍了在Windows中,是否在应用程序“发生异常未知软件异常(0x40000015)”平均STATUS_FATAL_APP_EXIT?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在关机时(由UPS启动),我的应用程序崩溃,并显示一个消息框。

At shutdown (initiated by an UPS) my application crashes and a messagebox appears.

消息框中的文本是应用程序中发生的未知软件异常(0x40000015)。

The text in the messagebox is "The exception unknown software exception (0x40000015) occurred in the application".

我浏览了 ntstatus.h ,并发现 STATUS_FATAL_APP_EXIT ?如果是正确的,为什么消息框会显示未知软件异常?

I browsed ntstatus.h and found STATUS_FATAL_APP_EXIT? If it were right, why the message box say "unknown software exception"?

推荐答案

是的,0x40000015表示STATUS_FATAL_APP_EXIT。您的应用程序在关机期间导致未处理的运行时异常。一些运行时异常实际上是处理的,如果你不自己处理它们,其中一些默认处理程序调用 abort()。默认情况下, abort 调用:

Yes, 0x40000015 means STATUS_FATAL_APP_EXIT. Your app causes an unhandled runtime exception during shutdown. Some runtime exceptions are actually handled if you don't handle them yourself, and some of these default handlers call abort(). By default, abort calls:

_call_reportfault(_CRT_DEBUGGER_ABORT, STATUS_FATAL_APP_EXIT, EXCEPTION_NONCONTINUABLE);

abort 是一个通用终止 - 它没有不知道什么具体异常促使它被调用,因此通用的未知软件异常消息。

abort is a generic termination - it doesn't know what specific exception prompted it to be called, hence the generic 'unknown software exception' message.

一个中止路径是通过_purecall异常 - 调用未实现的纯虚拟通话。

One path to abort is via the _purecall exception - calling an unimplemented pure virtual call.

从Visual Studio\VC\crt\src目录中的purevirt.c和abort.c中收集。




MSDN有覆盖默认纯粹调用异常处理程序的文档

Gleaned from purevirt.c and abort.c in the Visual Studio\VC\crt\src directory.


MSDN has documentation on overriding the default pure call exception handler.

以下是一些相关问题:

  • Capturing R6025 pure virtual call
  • Where do "pure virtual function call" crashes come from?
  • Shutdown exception handling for Win32/C++

这篇关于在Windows中,是否在应用程序“发生异常未知软件异常(0x40000015)”平均STATUS_FATAL_APP_EXIT?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆