c# - 从 COM 调用时如何调试托管代码中未处理的异常?

标签 c# .net debugging visual-studio-2005

我有一个从 COM 进程外 ActiveX exe 调用的 C# .NET 组件。

我可以在调用 .NET 组件的 COM exe 上运行的 Visual Studio 2005 中启动调试器。断点有效,但中断未处理的“对象引用集”异常则无效。我尝试了以下无济于事:

  • 在 VS 异常对话框中检查了所有 CLR 异常
  • 启用“当异常跨越 AppDomain 或托管/ native 边界时中断”
  • 在我的项目上启用了非托管代码调试
  • 禁用“仅我的代码”调试

最佳答案

我通常做的是在托管代码的入口点添加对 System.Diagnostics.Debugger.Launch; 的调用。如果程序尚未处于 Debug模式,这将启动调试器。请记住,您需要在完成调试后删除此行,因为您不希望在发布版本中继续调用以启动调试器。

关于c# - 从 COM 调用时如何调试托管代码中未处理的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6091775/

相关文章:

c# - 使用 LuaInterface - ERROR_DLL_INIT_FAILED

c# - getschema ("Columns") + 返回数据类型;

c# - SlowCheetah 没有为 EntityFramework 迁移进行转换

c# - 查明 IEnumerable<> 是否具有唯一值的最佳方法

c# - 如何在 WPF 的 Combobox 中有效地添加多个项目

Python实时编码/调试

c# - WPF中,XAML是否可以获取当前渲染背景的颜色?

.net - 通过 .NET 发送电子邮件后 PowerShell 关闭文件/删除文件

c++ - 代码块调试器不停止

debugging - 如何在 Visual Studio Code 中设置我的工作区文件夹?