乾坤大挪移--将for bcb5的组件移植到bcb6中

      乾坤大挪移--将for bcb5的组件移植到bcb6中
    大家都知道bcb6已经出来一段时间了,在稳定性和易用性方面有了很大的提高。尤其是网络方面的功能,如对webserver,snap等都提供了很方便的开发方式。许多朋友也许早就跃跃欲试,可有一个很重要的原因阻止了他们对bcb6的使用,那就是以前大家用bcb5时搜集了很多for bcb5的组件,可这些组件有很多并没有及时的出for bcb6的版本。My god,我的ehlib,mwedit,strcon.......,很多朋友已经尝试了在bcb6下对原来的组件进行重新编译,可总会出现编译失败的局面,是bcb6不向下兼容么?不,只要你有源代码,理论上可以把for bcb5的任何组件进行移植,只不过需要你对原码进行一些小小的改动而已
现在我就以一个非常经典的组件mwedit 0.92为例:

1.因为在bcb6中toolsapi目录中已经取消了DsgnIntf.pas,而把DsgnIntf.pas中的代码分散到了DesignIntf,designeditors,vcleditors单元中,所以要将

mwEditPropertyReg.pas中的DsgnIntf用DesignIntf,designeditors,vcleditors代替

2.编译bpk时会产生“找不到DesignIntf.dcu,designeditors.dcu

,vcleditors.dcu错误”。好办,你随便建立一个新的工程,把toolsapi目录中的designIntf.pas,designeditors,pas,vcleditors.pas添加到工程中,编译一下就能产生相应的dcu,obj文件,把产生的dcu,obj文件拷贝

到bcb6下的lib/obj目录中即可。

3.编译bpk时会产生“不能找到proxies.obj的错误,可borland又没有提供proxies.pas单元,我们无法生成proxies.obj文件,怎么办?其实根本无需proxies.obj文件,因为在bcb6中已经把proxies.obj的代码编译进了designide.bpi(dephi6在designied.dcp)。所以在bpk的工程中的requires中添上designide.bpi即可解决这个问题。

4.终于可以用了!!别,程序如果用到了mwedit中的控件,编译时会发生错误,因为mwcustomedit.hpp中的常量WM_MOUSEWHEEL 与系统有冲突,所以将mwcustomedit.hpp中的static const Word WM_MOUSEWHEEL = 0x20a;这一行注释掉即可。

这是一个很典型的例子,您使用其他组件时根据编译出错信息,一般照此改改即可。祝大家玩的愉快。


注:mwedit是一个很好的edit组件,提供了sql,c++,delphi等语法高亮显示的功能,而且完全免费,可惜作者只提供了for bcb34的版本,如果在bcb5下可以直接编译通过,在bcb6下就费些事了^_^。大家可

以去“海阔天空”网站下载mwedit 0.92版本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值