VC调试遇到的问题

本文记录了一次音视频图像传输调试过程中遇到的奇怪问题及其解决过程。作者在对项目进行重大修改并备份后发现,调试器无法正确加载断点,且源文件路径指向错误的位置。通过清除旧的对象文件并重新编译项目解决了这一问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在调试音视频图像传输时遇到了这样奇怪的问题,现在回想起来大致过程是这样的:


1. 原先的项目文件在 D:/AVIO 文件夹中

2. 由于要对这个项目文件作一个大的变动,结果很难预料, 把文件拷到 D:/AVIO_backup 做备份

3. 用 D:/AVIO_backup 做修改, 但是调试时我发现断点设置后,执行流程根本就是错误的。由于用的是这个项目文件是 VC6.0 做得, 我也沿用了. 我怀疑是源码调试时调试器出了问题. 我对其中的某个文件做了修改,但是发现在D:/AVIO_backup中的该文件并没有改动。奇怪!!?? 改动的文件是哪个呢? 回想以前类似的情况 我查找了 D:/AVIO中的该文件, 果然这个文件夹中的该项目文件被更改了。

4. 为了试验 调试D:/AVIO_backup 项目时是否引用了 D:/AVIO 里面的项目文件, 我把 D:/AVIO 里面的项目压缩且换了位置.

5. 再次调试 D:/AVIO_backup . 当调试到该文件时, 弹出提示 "源文件 XXX 未找到的" 的窗口, 这部分显示为了汇编。 我看了一下, 调试器提示找不到的文件就在当前文件夹下面。


6. 后来我选 "build"-->"batch build" 把原先的 *.obj 全部清除了,对整个项目重新编译了。这样问题就没有出现了。

7. 后来我想 每个源文件对应一个 *.obj , 被编译出来的 *.obj 应该包含源文件的路径信息, 这样调试器就能找到源文件了. 但是由于整个项目文件的备份,备份的 *.obj 中含有的仍然是先前源文件的路径信息, 至少也要把整个项目重新编译一遍才可以。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Blue_Dream_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值