9

我尝试使用谷歌搜索,但找不到任何关于 EEMessageException 是什么类型的异常的文档。

我在使用调试器运行 C# 应用程序时观察到它,该调试器具有在所有异常上停止的选项。

First-chance exception at 0x773cb9bc (KernelBase.dll) in....
Microsoft C++ exception: EEMessageException at memory location 0x0032b280

从错误消息和给定的堆栈跟踪是:

KernelBase.dll!_RaiseException@16()  + 0x58 bytes   
>   msvcr80.dll!__CxxThrowException@8()  + 0x46 bytes   

我猜它是某种 VC++ 异常。

我知道这可能是一个已处理的异常并且不会引起任何问题,但我很好奇 EEMessageException 是什么。

4

1 回答 1

11

您会看到一个非托管异常,它在 CLR 中引发。它非常通用,用于在深入本机代码时发出错误信号。名称的“消息”部分是为 Microsoft 测试人员准备的。只需等待该异常变为托管异常即可。或者如果它是良性的则被吞下。

或者取消勾选项目+属性、调试、启用非托管代码调试复选框,这样您就不会看到它。或者使用 Debug + Exceptions 并取消选中 Win32 异常的 Thrown 复选框,这样调试器就不会在这些异常上停止。

于 2013-08-08T17:31:48.907 回答