• User breakpoint called from code at XXX的解决方式记录


    最近在项目上遇到一个问题,纠结了很久终于查清楚原因了。 user breakpoint called from code at XXX。场景是这样的:

    程序调用了多个dll,在调试exe的时候,调试到dll时直接报该错误。但是将dll及其相应的lib库更换成debug版本,却又不再报错。exe和dll程序变成release版本没有问题。

    最终发现在dll里面调用了exe导出函数,然而当初编译dll的时候debug用的是exe的debug,release用的exe的release。但是在exe调试状态,而dll,release状态的时候,dll编译连接到的exe却是release版本。造成不匹配。但dll的release版本连接的exe程序的lib库变成debug版本之后,错误消除。

    此外还有网上一些朋友发出来的处理方案,就不做粘贴了。

    不过有了新的知识长进:在release下,将dll 的设置成:C/C++ --general -- debug info---line number only, C/C++ ----general---optimization-- maxmize speed,

    C/C++ --- general -- generate browse info, Link --- General -- Generate debug info , link incrementally , generate map file 选择上即可在debug 状态下也能进入到release的dll 进行源码调试。

    另外,debug 下反汇编代码的查看 ALT + 8 

  • 相关阅读:
    Abstract与Virtual
    List 常用方法
    控制数据采样分布 计算概念
    中期答辩感想
    软件开发之团队理解
    详细设计理解
    竞赛系统需求分析
    软件代码规范之理解
    AngularJS 整理资料
    AngularJS合集
  • 原文地址:https://www.cnblogs.com/Sarah1127/p/5182861.html
Copyright © 2020-2023  润新知