1

我正在用 C# 为用 C++ 编写的主机应用程序编写插件 DLL(我没有主机应用程序的源代码)。当我运行主机应用程序时,它会加载我的 DLL 以在该会话期间使用。最近,我在主机应用程序退出时看到以下错误:

Microsoft Visual C++ Runtime Library
Runtime Error!
Program: MyHostApp.exe

This application has requested the Runtime to terminate it in an unusual way...

此对话框仅包含一个“确定”按钮(无调试按钮)。按 OK 后,主机应用程序将退出,而不会给出任何可能导致错误的指示。

我发现这个stackoverflow线程有类似的问题......

如何调试 Visual C++ 运行时错误

但是,每当我尝试将 VS2008 附加到崩溃的应用程序,然后按照指示执行“全部中断”时,我只会从 VS 收到以下消息:

"无法中断执行。此进程当前未执行您选择调试的代码类型。 "

我应该如何进行调试?

4

2 回答 2

0

C# 不生成本机代码!即使应用程序是本机的,C# 也会在嵌套的 CLR 中执行。选择“托管代码”。

此外,不要“全部中断”,而是对所有可能的异常设置中断,然后将其运行到失败。

于 2011-02-10T01:37:44.260 回答
0

您是否在启动调试器时尝试设置“本机代码”选项?

于 2010-06-22T17:21:42.980 回答