【发布时间】:2011-05-26 11:33:48
【问题描述】:
我正在使用通过 COM 与 C#.NET 组件交互的 C++ 应用程序。 由于 .NET dll 引发的一些异常,我的 C++ 应用程序正在崩溃,尽管所有异常处理机制都已到位。 是否可以在 C++ 代码中捕获 .NET dll 引发的异常?怎么样?
【问题讨论】:
-
发生了其他事情,CLR 不会让托管异常从 COM 互操作调用中逃脱。它们总是被翻译成 HRESULT。这可能不是托管异常。
-
我的疑问是,这一切都在同一个进程中运行,如果 .NET 代码中发生了一些致命异常(如无效的内存引用),CLR 仍然能够防止进程崩溃吗?