Windows下利用WinDBG、OllyDBG进行源码级调试

本文介绍了如何在Windows环境下使用WinDBG和OllyDBG进行源码级调试,强调了文件版本统一、设置符号文件路径和源文件路径的重要性。详细阐述了在WinDBG中通过图形界面和命令行设置符号路径与源码路径的方法,并指出OllyDBG的限制。调试时,WinDBG会自动弹出源码窗口,而OllyDBG需要手动操作。
摘要由CSDN通过智能技术生成

        一般应用程序编译后会创建exe/dll/sys(可执行文件)、pdb(程序数据库)、map(编译信息)等文件,而源码调试需要可执行文件、程序数据库文件、还有源代码文件。(由于符号信息已经写入到程序数据库文件里,如果提到符号文件,一般都是指程序数据库文件)

      我们知道,pdb文件里记录着调试程序所需的所有信息,调试器进行源码调试时,是先通过pdb文件找到对应符号的源文件所在位置,并定位当前代码在源文件里的位置,显示到调试器里。所以,使用调试器源码调试时,必须保证以下几点,才能正确调试:

        1.文件版本统一。可执行程序、程序数据库文件还有源码文件必须是同一工程同一时刻编译所生成的。

        2.设置符号文件路径。确保调试过程中所有模块的符号文件齐全并在调试器里正确设置符号文件路径。

        3.设置源文件路径。必须把源码文件放到程序数据库文件所记录的目录下(编译时,源文件所在目录),或者通过调试器设置源码文件所在目录(如果调试器支持)。

       

       默认情况下,调试器会在可执行模块所在目录搜索程序数据库文件,如果没有找到才

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值