c# - 找到 "Debug assertion failed"错误发生的地方

标签 c# c++ com native

我编写了一个 C# 应用程序,它使用 native mfc 库作为 COM 组件。该程序运行在服务器机器上以监控一些硬件设备。虽然应用程序大部分时间都可以正常工作,但有时我会收到“C++ 调试断言失败”消息框。

我想知道如何在出现断言失败错误时调试我的应用程序并查看源代码的调用堆栈。我有我的 C# 应用程序源代码,但问题是断言发生在非托管代码中。当我将 visual studio 调试器附加到应用程序时,出现断言失败错误时什么也没有出现!

最佳答案

据我所知,如果您拥有 COM 组件的源代码,您只能对其进行调试。打开该项目后,将调试器附加到将调用/加载 COM 组件的 DLL 的进程。

关于c# - 找到 "Debug assertion failed"错误发生的地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27922056/

相关文章:

c++ - 如何使用 C/C++ 通过 gRPC 发送字节数据?

c++ - 如何在 Visual Studio C++ 2010 中将 BSTR 转换为 std::string?

c# - 使用 Excel 数据的简单任务未完成运行导致 "ContextSwitchDeadlock"

c# - 在 C# 中调用 Delphi COM 对象抛出 AccessViolationException

c# - 如何从客户项目创建类的对象

c# - 使用反射在谓词中引用类的属性

c++ - 学校二进制转十进制练习

c++ - 为什么在动态分配的数组上调用 delete 会导致一个崩溃而不是另一个?

c# - 在 windows 和 mono linux 平台上显示 RGB 图像

c# - 如何在前端检测回发(aspx)