急!delphi升级遇到的困难!分不够另加! 将一段代码从delphi3升级到delphi6,编译报告找不到DsgnIntf,用DesignIntf替代后,再编译就报告TformDesigner没有定义,请问TformDesigner是个什么东东?应该怎么处理代码?先谢过各位大虾! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 从d3到d6?好多类库都变了,当然编译不了,我前些天有段d5的代码在d7下也编译不了。建议你重写代码。TformDesigner好像是窗体构造类型,可能从d3到d6这个过程中vcl的创建窗体方法变了。我是这样理解的,算是抛砖引玉吧,也希望有人能给你个合理的解释。 关于把设计时代码从运行时代码中分离出来的问题 译(DBoy) 自从Delphi6出来以后,一个经常被提到的问题是Proxies.pas文件从源文件中消失了。 这个改变是大趋势的一个部分。Borland在Delphi 5中没有装载DsgnIntf.dcu,这显然是要强迫迎合Delphi和C++Builder的许可协议。运行时代码在很多控件中常被不经意地用到。在某些方面Borland鼓励:如果你运用新的控件向导,你将发现这个向导只创建了一个单元,它把控件运行时的框架代码和注册函数放在同一个单元中。 在Delphi6中Borland更进一步,不仅用DesignIntf替换了DsgnIntf,而且属性编辑器也被放进了DesignEditors,DesignMenus,DesignWindows和其它的一些设计文件里。特别是DesignEditors使用了其它的一个名叫Proxies的IDE文件。(Proxies代码放在DesignIDE.bpl文件中。)不用说这些改变将会产生编译时的错误。 如果你的运行时代码已经与设计时代码分开了,那么就很容易修改。打开设计时包,然后选择一个目录,点击Add按钮。填写designide.dcp和点击确定。重新编译你的包,这时错误已经没有了。 如果你的设计时代码和运行时代码已经混合在一起了,那应该怎么解决呢?在Delphi里DesignIDE.bpl不是一个可以再分发的包。因此,即使是只是设计时包使用了组件的运行时代码或是只是控件dcu用了都将产生问题。 99.99%的情况事实上很容易解决。你的运行时代码事实上没有使用设计时代码;问题是没有合适的分开。hehe^^ 我在DELPHI6开发人员指南中看到这样 一句话:delphi的包给我们提供了放置程序的部分代码到单独的模块中和手段,这些模块可被多个程序共享。如果有DELPHI1或DELPHI2的代码,得益于包技术,使得可以不修改任何代码的情况下,都能使用这些代码。P73页 从D3到D6的跨度也忒大了吧,DELPHI6的一些书上有说如何从D1开始的升级方法,可以看看 求助各位大神,新人新建工程就遇到问题了。。。。 求助,如何删除dxdbgrid中动态创建的列 控件数组布局 使用TPrinter时, 如果有n页, 我如何可是实现打印指定页?多谢! 请大伙介绍几本 Delphi 图像编程方面的书, 先谢谢了^_^ 请教对数据库大文本字段的ZIP压缩算法 关闭exe 文件! 帮了这个忙,对阁下的仰慕之情如滔滔江水…… 编一个自己的控件很难吗???? 那里有DELPHI的函数库,给分25分 哪里有quickreport的使用说明可以下的 哪位大哥知道怎么拨号?
建议你重写代码。TformDesigner好像是窗体构造类型,可能从d3到d6这个过程中vcl的创建窗体方法变了。我是这样理解的,算是抛砖引玉吧,也希望有人能给你个合理的解释。
译(DBoy) 自从Delphi6出来以后,一个经常被提到的问题是Proxies.pas文件从源文件中消失了。
这个改变是大趋势的一个部分。Borland在Delphi 5中没有装载DsgnIntf.dcu,这显然是要强迫迎合Delphi和C++Builder的许可协议。运行时代码在很多控件中常被不经意地用到。在某些方面Borland鼓励:如果你运用新的控件向导,你将发现这个向导只创建了一个单元,它把控件运行时的框架代码和注册函数放在同一个单元中。 在Delphi6中Borland更进一步,不仅用DesignIntf替换了DsgnIntf,而且属性编辑器也被放进了DesignEditors,DesignMenus,DesignWindows和其它的一些设计文件里。特别是DesignEditors使用了其它的一个名叫Proxies的IDE文件。(Proxies代码放在DesignIDE.bpl文件中。)不用说这些改变将会产生编译时的错误。 如果你的运行时代码已经与设计时代码分开了,那么就很容易修改。打开设计时包,然后选择一个目录,点击Add按钮。填写designide.dcp和点击确定。重新编译你的包,这时错误已经没有了。 如果你的设计时代码和运行时代码已经混合在一起了,那应该怎么解决呢?在Delphi里DesignIDE.bpl不是一个可以再分发的包。因此,即使是只是设计时包使用了组件的运行时代码或是只是控件dcu用了都将产生问题。 99.99%的情况事实上很容易解决。你的运行时代码事实上没有使用设计时代码;问题是没有合适的分开。hehe^^