七斤古 2024-07-01 18:25 采纳率: 0%
浏览 5

vs中,断点调试libs中的文件

#在vs2022中,编译调试程序时,libs中文件不进入断点调试,如图:

img


#如图,打了断点,但是显示三角感叹号
#问题分析:上网找资料,发现要把pdb文件放到exe目录下,才能实现调试libs目录的文件,我也放了相关pdb的文件,但是再次调试时,还是不行

img


黔驴技穷了,到底什么问题啊,求解决!

  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-07-01 18:25
    关注

    引自免费微信小程序:皆我百晓生

    你的问题确实涉及到Visual Studio的调试设置和符号管理。从你提供的信息来看,你已经在尝试使用PDB文件来调试库中的代码,但仍然遇到了问题。以下是一些建议和步骤,希望能帮助你解决问题:

    1. 确保PDB文件与库版本匹配:确保你使用的PDB文件与正在调试的库版本相匹配。例如,如果你正在调试的是动态链接库(DLL)的调试版本,你需要对应的带有调试信息的PDB文件。同样,也要确保库的版本(debug vs release)与你的项目设置相匹配。

    2. 放置PDB文件:确保PDB文件被放置在正确的位置。通常,它们应该放在可执行文件(EXE)所在的目录或符号存储路径中。Visual Studio允许你设置符号(包括PDB文件)的搜索路径。你可以通过以下步骤进行设置:

      • 打开Visual Studio。
      • 在“工具”菜单中选择“选项”。
      • 在“选项”窗口中,展开“调试”节点,然后选择“符号”。
      • 在“符号文件(.pdb)位置”下,你可以添加包含PDB文件的目录或特定的PDB文件。
    3. 重新编译库:如果可能的话,尝试从源代码重新编译库以生成带有调试信息的版本。这可以确保你有最新的、完整的符号信息来进行调试。

    4. 检查断点设置:确保你在正确的位置设置了断点。如果断点设置在库内部的一个函数或方法内部,并且该函数或方法被其他库或代码调用,那么你应该能够看到执行流程进入断点。但如果断点是设置在库外部调用的函数上,那么你可能无法进入库的调试。

    5. 检查依赖项:确保你的项目正确地链接到了所有必要的库和依赖项。有时候,链接错误或缺失的依赖项可能会导致调试问题。

    6. 尝试其他工具:如果以上步骤都不能解决问题,你可以尝试使用其他调试工具或版本的其他Visual Studio实例来查看是否仍然存在问题。有时候,软件本身的缺陷或配置问题可能会导致此类问题。

    7. 查看错误信息:仔细检查任何在尝试调试时出现的错误或警告信息。这些信息可能会提供关于问题的线索或提示。

    希望这些建议能帮助你解决问题。如果问题仍然存在,请提供更多关于你的项目设置、库的使用方式或其他相关信息的细节,以便我能更准确地帮助你。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月1日

悬赏问题

  • ¥15 preLaunchTask"C/C++: aarch64- apple-darwin22-g++-14 生成活动 文件”已终止,退出代码为-1。
  • ¥18 关于#贝叶斯概率#的问题:这篇文章中利用em算法求出了对数似然值作为概率表参数,然后进行概率表计算,这个概率表是怎样计算的呀
  • ¥20 C#上传XML格式数据
  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥100 单片机hardfaulr
  • ¥20 手机截图相片分辨率降低一半
  • ¥50 求一段sql语句,遇到小难题了,可以50米解决
  • ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
  • ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
  • ¥15 虚拟机检测,可以是封装好的DLL,可付费