BCB的BUG?
本人最近在做一个项目,因为共用的模块比较多,同时有几个EXE要生成,所以利用了BCB的PROJECT GROUP工具,以前都是独立的建立一个项目,从不用PROJECT GROUP工具。
1、PROJECT工具里有两个EXE项目,其中一个OK了,PROJECT里设置的是RELEASE版,一个是正在做的设置的是FULL DEBUG版。
2、PROJECT GROUP打开后,我把FULL DEBUG版的EXE项目设置成ACTIVE状态,在主窗口的构造函数里设置的断点,BUILD以后点击运行,可惜系统直接执行起来并没有在断点处停下。我昏。
3、关闭所有,单独打开FULL DEBUG状态的EXE项目,未做任何改动,运行,同样设置断点,程序在断点处停下。
我用的是BCB6+SP4,WIN2K专业版+SP4,不知道这种问题是不是PROJECT GROUP的BUG?不敢乱想拿出来给同志们参考一下。谢谢。
问题点数:200、回复次数:21Top
1 楼redfoxliu(fox)回复于 2006-03-13 11:55:22 得分 20
BCB6+SP4,WIN XP+SP2。未出现你所说的问题。Top
2 楼boyla(土著巫师)回复于 2006-03-13 12:00:55 得分 0
没仔细多试,会不会是一个是RELEASE版,一个是DEBUG版的原因,我这边系统刚打开时处于ACTIVE状态的是RELEASE版的项目。Top
3 楼PlateDSP()回复于 2006-03-14 10:27:16 得分 30
这是BCB的老问题,不但BCB6有,BCB5也有,只能用一些笨办法了.Top
4 楼PPower(月亮光光,照地堂)回复于 2006-03-14 10:40:45 得分 10
RELEASE版與DEBUG版的中間文件(obj,dcu,lib..等等)最好分開地方存放。
不過我也沒試過這樣。Top
5 楼boyla(土著巫师)回复于 2006-03-21 21:10:49 得分 0
感谢楼上,我想这样应该可以解决问题。
Top
6 楼chenjie100(OCEAN)回复于 2006-03-30 16:14:59 得分 20
debug版本才能调试的。Top
7 楼boyla(土著巫师)回复于 2006-04-04 14:24:14 得分 0
1、问题没有得到解决,不过这个现象可重复:第1次打开项目时(FULL DEBUG),运行到断点处停下了,可是通过file->open菜单打开另一个不同于当前项目目录下的CPP文件查看一些东东(没做任何改动),再运行,程序直接起动了,没有在断点处停下。昏。
2、在上面的现象出现后,再通过file->open菜单,打开当前项目目录下的一个CPP文件,(不做任何改动),再运行,在断点处停下了。更昏。(初步估计是打开文件时改变了系统互不干环境),所以进行3验证)
3、重建立一个项目(FULL DEBUG版),重复上述1、2两个动作,断点每次执行到的时候都停下,并没有出现我猜想的结果。昏上加昏。(是我估计错了?)
同志们,本来这个贴子是0分贴 ,现加上200分,供同志们小测一下,参与者有分。谢谢。
Top
8 楼boyla(土著巫师)回复于 2006-04-04 14:29:52 得分 0
同志们,同样的现象出现在我的另一个项目上,狂昏。再试前面新建立的项目,没有出现断点上停不下的情况,我再努力,瞧新项目上有什么“奥秒”?:(Top
9 楼PPower(月亮光光,照地堂)回复于 2006-04-04 15:01:21 得分 20
在項目組中調試時,如果第一個調試點不在當前項目中,該中斷點無效的。你要調試哪個項目就把當前項目移到該項目去。
Top
10 楼netsys2(来电!)回复于 2006-04-04 15:04:13 得分 20
是否两个PROJECT有共同的模块,只编译一次,出来一个RELEASE版本。
但另外的DEBUG版PROJECT做LINK时检查该模块没有变化,因此直接LINK,结果不能调试。Top
11 楼boyla(土著巫师)回复于 2006-04-04 15:31:32 得分 0
TO ALL: 我找到了BORLAND的BUG,算是给BORLAND做点贡献。:)
1、为了恢复BCB的缺省环境,我退出BCB,把BCB安装目录BIN下的Default.bpr文件删除掉,这样系统起动时所有的设置应是缺省环境。
2、起动BCB,系统起动时自己会建立一个项目,保存在一个目录里,比如D:\TEMP,名称等什么也没改变,只一个FORM,这个项目应该足够简单了。(当然是FULL DEBUG模式)
3、测试我前面说的file->Open打开非D:\temp目录下的的文件,在FORM1的构造函数里加一句:
Caption = "Full Debug";并在这一语句上设置断点。没有出现我前面说的断点停下不了的状态。一切OK。
4、经过对比新项目和我前面所说出现问题的项目的Project->Options,一一排除后锁定Directories/Conditionals里的参数:Final output(这个参数是控制最终的EXE文件生成在哪个目录里的)。
5、设置Final output里的值为bin,点击OK,系统提示目录不存在要不要建立,选择yes;重新MAKE一下生成的EXE文件现在出现在d:\temp\bin目录里。
6、再利用file->open(或是快捷图标)打开不同于d:\temp目录里的一个文件,比如c:\xxx.log文件。
7、运行程序,断点处程序没有停下,FORM直接出现了。BUG再现。! 如果重新打开d:\temp下的文件系统OK了。
经过多次测试,我确信这是BCB的一个BUG(其它版本情况未知),那么Final output这个参数是不是就不可以设置了呢?不是。经过仔细测试,只要把这个目录值设置成绝对路径(如c:\mydir\bin),BUG就不会出现!
同志们,咱下岗工人对BCB也是有贡献的。喜极而泣。夸张。:)Top
12 楼boyla(土著巫师)回复于 2006-04-04 15:32:26 得分 0
8、与是否使用project group没有什么关系。Top
13 楼constantine(飘遥的安吉儿)回复于 2006-04-04 16:02:18 得分 20
好像曾经见过类似的情况Top
14 楼jone7319(舍我其谁)回复于 2006-04-04 16:27:55 得分 20
明日找Borland领工资去!!!说不定他会留下你啊Top
15 楼netsys2(来电!)回复于 2006-04-04 16:36:57 得分 0
哈哈!Top
16 楼boyla(土著巫师)回复于 2006-04-04 17:29:44 得分 0
下岗工人,不敢有非份之想。一直用D版,算是回报给BORLAND吧。嘿嘿。:)
用BCB也已5年了,陆续做过一些程序,没碰着什么BCB的BUG,多数情况都是自己的无能,这回总算碰到一个;思来想去,觉得BCB还是值得再玩玩的,不是我有偏执狂,总觉得一个优秀的工具是不能轻易丢弃的,可惜的是:)Top
17 楼boyla(土著巫师)回复于 2006-04-04 17:31:45 得分 0
可惜的是BCB2006在我的PIII600/128M的本本上是怎么也安不了家的了,用“小6”,我已很满足,不敢奢望。哈哈。Top
18 楼PPower(月亮光光,照地堂)回复于 2006-04-04 22:33:58 得分 10
PIII600/128M 鳥槍該換換炮了。就算跑B5也累。Top
19 楼wangxintu(Jessie)回复于 2006-04-05 09:41:31 得分 20
楼主有功,我也经常遇到这样的问题,害得我总关闭项目重新打开。
我试了好像如果Final output目录是在D\temp1下,而你再打开D\temp2下的文件断点仍有效,但若打开E盘的文件断点则无效Top
20 楼tianshu888(CC)回复于 2006-04-05 10:10:18 得分 10
没有遇到过同样的问题 不好说。Top
21 楼snowhill()回复于 2006-06-20 14:16:51 得分 0
我去试试Top




