firefox调试记录7——打开与修改文件

按照网上其他人给出的方法,打开了firefox工程之后,设置好环境变量,自己就可以打开一些文件,下断点,进行调试等。但是我一直没有找到打开某个特定文件的方法,如下图是firefox工程点击右键时的选项:

不过可以添加现有项目,这样可以把firefox.exe目录下的其他测试程序都打开来调试一下,上图中我就打开了TestGetURL等几个测试程序。因此,我总也没找到人家说的打开文件如何打开。
后来在网上问别人,终于知道了我的问题出在哪里了。其实打开文件就在VS的文件菜单里面。这也只能怨我自己对VS不熟悉。打开文件的菜单截图如下:

也可以快捷键ctrl+O打开,我打开了文件~\firefox-8.0.source\netwerk\base\src\nsBaseChannel.cpp,并在GetNotificationCallbacks函数上设置一个断点。接着运行程序,程序果然就断在了这个地方,如下图:

这下好了,我可以随便想打开哪个文件就打开哪个文件并设置断点进行调试了,下一步要坐的就是修改文件,并使我做的修改能够起作用。
我的想法是在某个文件里添加一句打印信息,如果我添加的打印信息能够成功显示,那么就说明修改起作用了,我在d:\firefox-8.0.source\toolkit\xre\nsWindowsWMain.cpp文件中的wmain函数中添加了一句printf("Usage: TestGetURL <url>\n");这句是直接从TestGetURL的源文件中复制过来的。

修改之后我再次F10发现VS会提示文件已经修改,选择是,程序会按照原来的执行,选择否则会显示无可用源。于是我就试着对firefox重新编译了一遍。也不知道是为什么,我没有按照最开始那样运行make -f client.mk build,我直接与运行了make -f client.mk,这样编译花费了很久,但是比第一次编译花的时间短很多。重新编译之后,我再次F10运行修改了的程序。运行完毕修改之处就显现了我写的打印信息,如下图:

如此,就证明了我可以修改某个源文件,重新编译一遍,然后就可以对修改之后的程序进行跟踪调试了,虽然步骤比较繁琐,但是这找到了一条可行的方法。不过也说明编译的时候可以用make -f client.mk,但是第一次编译最好还是用make -f client.mk build,因为我不敢保证第一次编译的时候不加build会出现什么结果。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值