从.NET应用程序调试C ++代码时出现问题

时间:2011-06-29 11:24:55

标签: c# c++ visual-studio debugging

我有.NET服务(C#),它使用了几个c ++库。我迫切需要进入C ++方法,但是当我设置断点时,它们会在运行时被禁用。

在哪里看?

我在C ++项目设置中设置了“Attach Debugger”,但这似乎没有改变。

请指教。在哪里看?

如果有人关心,这些图书馆是quickfix engine

2 个答案:

答案 0 :(得分:9)

您的项目需要enable unmanaged code debugging。要做到这一点:

  1. 在解决方案资源管理器中右键单击您的项目,然后单击“属性”。
  2. 在“调试”选项卡中,选中“启用非托管代码调试”框。
  3. 默认情况下,面向.NET Framework的项目仅调试托管代码。您必须明确告诉它您要调试非托管代码。

    如果这不能解决问题,还要确保在“选项”对话框中找到的调试设置中未启用“启用我的代码”设置。


      

    当我附加到流程时不起作用。只有当我从工作室跑步时才有效

    正确。当您附加到进程时,您的项目不会[必然]加载,并且Visual Studio不会关注其设置。

    在这种情况下,您需要在“附加到进程”对话框中设置适当的选项。为此:

    1. 点击标有“附加到:”的行末尾的“选择...”按钮。
    2. 在出现的对话框中,除了相应版本的“托管”代码外,还要确保选中“原生”。

答案 1 :(得分:2)

转到Project Properties - > Debug - >并设置复选框

Enable unmanaged code debugging

HTH