分享
 
 
 

BCB6与BCB2006控件的安装

王朝other·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

一、安装步骤:(这是废话)

1、拿到源码,要全部源码,不要那种只有部分源码的包,。

2、找到BPK文件,假如只有DPK文件,那就用DPK2BPK程序(网上下载)生成一个BPK文件,假如生成失败,那就自己新建一个包(BPK或bdsproj),把DPK文件中包含的pas文件包含进去。

3、编译与安装。

二、注重事项:

1、Bpl包的重名问题,主要是不能重名,在Borland 与 system32下查找要安装的包的名字,假如找到全删除掉。

2、文件的重名问题,.pas.h.hpp.dcu.obj.lib.bpl.bpi.dfm.res 等文件均不应有重名现象,假如有应删除旧版本文件。这里介绍一个软件完成这项工作Beyond Compare,其主页是http://www.scootersoftware.com/

3、文件路径的设定,编译查找路径,链接时查找库文件的路径,BCB2006的路径设定会多一点,把Bcc32 Dcc32 ilink32 tasm32 等分开设定,这些均要一一设定正确,并注重先後次序对编译器的影响。这3点注重事项要时刻想起,出了问题要先查证无误。不要因为这些问题而让自己陷入泥潭,那不值得。

三、编译链接中的常见错误及排错方法

1、找不到obj或dcu文件。看看你的硬盘是不是有这麽个文件,假如有那就是第二步所说的路径问题。

2、假如文件没加入项目,那是不会生成链接所需要的obj及lib文件的。这时要注重编译多个包时的先後次序。

3、编译开关控制文件,控件包代码中的编译开关一般放在一个文件(.inc)中,假如为pas後缀请改名。类似於下面代码,假如在BCB2006下安装,就要自己修改这个文件。

{$IFDEF VER180} //假如是用BDS2006编译

{$IFDEF BCB} //BCB2006

{$DEFINE VER140} //那麽采用B6一样的编译开关

{$ELSE} //Delphi2006

{$DEFINE VER170} //那麽采用D9一样的编译开关

{$ENDIF}

{$ENDIF}

要用正确的编译开关才能编译正确。至於如何改,那要看具体的文件才行,这个一般也不难改。

4、关於DesignEditors这个单元的问题 , DCP文件的使用。

在BCB2006中,PAS代码假如包含了这个DesignEditors单元,会引起编译失败,原因是BCB2006并没有提供DesignEditors所要的全部源码,这里会提示说找不到Proxie这个文件。可是还是有方法安装的。解决方式是通过.dcp(Delphi Compiled Packages)文件:

在 Project Options -- Pascal Compiler(Dcc32) -- Other Options 页 ,有个use package .dcps when compling , 把其选上,同时填上所要的.dcp文件的名字,DesignEditors所需要的.dcp名字是designide(只填名称就可以了,不要加後缀名哦),填上所要的dcp文件後,DesignEditors的问题得以解决。

在BCB6中,则是将这个dcp文件加入项目,或指定连接对应的lib文件。

5、代码中的编译错误

这里指安装在B2006的控件才会碰上,因为控件没有for 2006 的,所以才有这问题,过一段时间控件升级,就没这种问题了。

这只能是见招拆招了,没有其他办法。如rxlib中的变量与B2006的TControl新增属性重名, ehlib中的因2006中TFieldType类型的增加要增加相对应的匹配项。

6、通过编译後链接时出现的错误。 这就是众人讨厌的link av 错误

出现这类型错误时,首先要记得检查上面说的注重事项,然後才进行後续的排错工作。切记。这时要进行的也就是修改项目文件了。

这个在BCB6或BCB2006测试版中支持都不好,正式版还未知如何。是一个大毛病,令人心烦。假如有多个包要修改,建议使用工具UEdit32来辅助这项工作。在外部修改了包文件後要在BCB中关闭该项目重新打开後才生效,不要被BCB那个提示迷惑了。

要修改包文件,先介绍一下包文件的内容 :(Borland真应该自己做出一个工具修改自己的包文件)

bpl项目文件用XML格式,大部分一看就明白,说一下与linker有关的部分。

<LINKER>

<ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>

<ALLRES value="$(RESFILES)"/>

<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>

<OTHERFILES value=""/>

</LINKER>

这里: $(PACKAGES) 是指上面定义的 PACKAGES value 的全部。$(OBJFILES).ALLOBJ ALLRES 这两项一般不出现什麽问题。

ALLLIB 这项问题多,是LINK AV错误的发源地之一。里面有两大类:$(LIBFILES) $(LIBRARIES value)

$(LIBFILES) //BCB2006是小写,B6是大写。libraries

$(PACKAGES) //packages

$(SPARELIBS) //sparelibs

看看里面就知道Bolrand做了些什麽,有时会有一大堆没用到的包与库都放在那,这里Borland做得真差劲。

假如你安装了很多包,那麽存盘的时候所有的包与库都将写到这里面,别人假如没有这个包就会出错。这问题很弱智,但Borland就是这麽做。

把你项目中不用到的包与库删除掉。链接时也就不会报找不到什麽什麽库了。

可是还是出现link AV ,这时可能出在 libraries 项,检查libraries项,把重名的删除(还会出现重名的borland真是),重排一下次序。

sparelibs项假如混乱就设成与libraries一样。假如你的项目要链接vclsmp.lib,手工在这加上,不少lib在IDE中加不上的都在这手工加上。

设定这里的库列表需要对这些lib库的熟悉,假如不清楚,可copy一另一个项目的libraries项过来试试看。

FILELIST 项,BCB可能会有一些没用的文件也在其中,这里会造成找不到这文件的错误。检查一下,删除访该项即可。假如路径不对,也改对它吧。

我就是通过修改libraries packages sparelibs FILELIST 解决了不少link av错误。其他选项在project->Optons都能设定,但这几项只有手工改文件。

注重一定要先对上面提到的注重事项仔细做一遍。

关於Uedit

用UEdit可以查找函数出现在哪个lib或bpi文件中,从而知道该链接哪个lib。使用哪个bpi。当做内容替换时Uedit也很体贴。正确地连接lib bpi文件及使用dcp文件,可解决使用Borland没给出源码的那部分单元链接失败的问题(全编译时失败)

关於B2006下安装可参考: http://community.csdn.net/EXPert/topic/4440/4440033.xml?temp=.9818537

我把自己在处理包的一些方法写下来,供大家参考,希望能得到指正。这方面找不到Borand的Help,就做一下抛砖引玉的动作了。这些错误老是令人心烦不已。每次装控件总忙个不停很烦,这本来就不是程序设计本身的事情呀。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有