FISH 的专栏

天生我才必有用

VC调试遇到的问题

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


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 中含有的仍然是先前源文件的路径信息, 至少也要把整个项目重新编译一遍才可以。

 

阅读更多
文章标签: 汇编 build
个人分类: 调试技术
上一篇IDA 远程调试
下一篇由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭