mysql pdb文件怎么打开_如何利用.pdb文件去调试

本文介绍了如何使用pdb文件调试exe程序。在没有源代码的情况下,通过分析已有的编译包找到pdb文件,利用Visual Studio设置调试选项,并指定pdb文件路径,从而实现对exe的调试。强调了在解决问题时分析现有资源的重要性。
摘要由CSDN通过智能技术生成

问题需求:

1.需要去调试一个exe,查看内部执行的过程,但是该exe的源代码是孤立的,利用make文件组织进行编译.每天会给出编译包。

问题的分析:

考虑1. 新建一个VS的工程,然后手动添加这些文件,然后编译调试。

考虑2. 既然有make文件,那么之前是否有编译成功的版本,该版本是否保存了调试的符号文件?

针对方案1:手动添加得考虑一下该工程的依赖关系,是否涉及太多的模块,否则将问题更加复杂化就不好了,我的需求中提到我的这个工程牵制的模块非常多,所以这个方案我肯定要放弃的。

针对方案2:我可以获取到每日编译包,打开找了一个,找到了该 *.exe,而且Symbol Files统一放到一个文件下管理,那么我没有理由不用第二种方案.

背景知识:

方案2肯定会用到的知识有符号文件,所以先大致说一下符号文件(Symbol Files)的定义.

符号文件(Symbol Files)是一个数据信息文件,它包含了应用程序二进制文件(比如:EXE、DLL等)调试信息,专门用来作调试之用,最终生成的可执行文件在运行时并 不需要这个符号文件,但你的程序中所有的变量信息都记录在这个文件中。所以调试应用程序时,这个文件是非常重要的。用 Visual C++ 和 WinDbg 调试程序时都要用到这个文件。

解决方案;

1.新建一个 Visual C++ Win32 Console Application project.

这个控制台的程序只是一个用来进行调试的宿主程序,所以可以任意的创建,在这里我创建一个默认的Win32 Console Application.

2.选择工程的属性,在Debugging标签下,设置以下几个信息: Command: C:\Test\Sample.exe;

Command Arguments: test1  test2 (that depends on what you want to debug);

Working Directory: C:\Test;

3.In VS, Tools -> Options -> Debugging -> Symbols, 然后指定Symbol file(.pdb) ,将该路径填入即可。

4.打开Sample.exe的源代码文件,将调试中需要用到的文件打开并设置断点,F5即可调试.

总结:

碰到这个问题的时候,我第一反应就是用第一种方案,但是花费很长时间之后还是问题重重之后,我就看是意识到可能这并不是很好的办法,通过分析和研究,选择第二种方案,不到10分钟就可以解决这个问题。

碰到问题一定要先分析一下已有的资源,然后再进行方案的选择。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值