如何调试VCL源代码
时间:2010-09-28 来源:chulia
http://www.delphibbs.com/delphibbs/dispq.asp?lid=153971
http://www.winu.cn/space-14160-do-blog-id-13766.html
设置Project->Options...->Directoris/Conditions的
Search Path & Debug Source Path.
Delphi3 :源码的完全路径
Delphi4 :${Delphi}\Source\VCL;${Delphi}\Lib;.... OK,现在F7,你可以开始调试所有VCL的源码了!
如何调试VCL源代码
http://wendang.baidu.com/view/f4e05175a417866fb84a8ec8.html
Project|Project Options...在Compiler页选择Debug DCUs选项,然后重新Build工程,就可以了。
Delphi编译、调试的路径搜索方案
http://www.fjsnow.com/tcbbs/redirect.php?tid=151&goto=lastpost
现在还经常有同事和朋友问我怎么编译不了程序,或断点不起作用等等问题,今天索性就把我知道的东西整理出来供需要的朋友参考参考。由于这部分东西没发现有正式文档说明,只是本人靠经验摸索出来的,所以不能保证肯定正确无误,讲的不对的地方就请指出来。1. Delphi编译的时候,对于需要用到的单元文件是按着先搜索.pas文件后搜索.dcu文件的顺序进行。就是说先搜索.pas文件,如果.pas文件没有搜索到,然后再搜索相应的.dcu文件。如果都没有找到,编译器就会报找不到***.dcu文件的错误。2. 对应编译、调试的搜索路径是按着“项目文件——》项目搜索路径——》IDE环境Library路径——》系统环境变量里的路径”的顺序进行搜索。所以提示找不到.dcu的时候,只要看看.pas文件或.dcu文件是否在上面的这些路径里,如果不在,在合适的地方把文件路径添加进去即可。注意:搜索路径的顺序很重要,不是危言耸听。3. 至于不能断点的问题,基本可以确定是没有找到.pas文件或没有找到"含有Debug信息"的.dcu文件。这里着重强调含有Debug信息的.dcu文件是因为Delphi默认搜索路径"$(delphi)\lib"下的VCL源码的.dcu文件是不含Debug信息的,这也就是为什么默认情况下VCL源码断不下来的原因。细心的人会发现"$(delphi)\lib"下有个“Debug”的文件夹,而且里面也都是VCL源码对应的.dcu文件,这些就是含有Debug信息的.dcu文件。所以只要能找到这些.dcu文件就可以调试VCL源码了。有些人会说只要"User Debug Dcus”就可以调试VCL源码了,说的不错,确实如此,但选择这个选项归根结底还是把"$(delphi)\lib\Debug"添加到了搜索路径里,并且优先于其他路径进行搜索,所以就能调试VCL源码了。打开“Debugger Options”就可以看到“Debug Dcu Path:”下面写的就是“$(delphi)\lib\Debug”,看到这估计能明白怎么回事了吧。当然你也可以直接把“$(delphi)\lib\Debug”添加到搜索路径,或者直接把VCL源码.pas文件的路径添加到搜索路径,记住一定要位于“$(delphi)\lib\”的前面,这样就可以对VCL源码进行调试了。调试其他控件的源码跟这类似。方法各种各样,只要明白了怎么回事,什么问题都可以解决。