加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 有没有人将D2007 TntControls应用程序移植到D2009?

发布时间:2020-12-15 04:16:49 所属栏目:大数据 来源:网络整理
导读:我有一个用Delphi 2007编写的相当大的(免费软件)项目,它使用TntUnicodeControls和TntLXControls库,我打算转到Delphi 2009. 不幸的是我在我的项目中到处使用这些库: 替换VCL控件以提供Unicode功能 Win32 API包装器(主要用于比较字符串) TntLXForms,TntLXRegi
我有一个用Delphi 2007编写的相当大的(免费软件)项目,它使用TntUnicodeControls和TntLXControls库,我打算转到Delphi 2009.

不幸的是我在我的项目中到处使用这些库:

>替换VCL控件以提供Unicode功能
> Win32 API包装器(主要用于比较字符串)
> TntLXForms,TntLXRegistry的功能增强,……
>使用TntControls的第三方组件. (可提供VirtualTrees,SpTBXLib,D2009更新)

您是否有任何将此类项目移植到Delphi 2009的经验和/或建议.首先切换到(商业)TMS Unicode控件是否可取?

解决方法

我可以帮助解决其中的一些问题,因为我正在移植使用TNT的C Builder应用程序,从2007年到2009年.在D2009中切换到Unicode已经过期且受欢迎.然而,遗憾的是,对于那些过去不需要unicode的人来说过渡可能更容易,而且可能仍然没有.如果像我一样,你需要Unicode并使用Troy Wolbrink的伟大TNT控件来提供它,你就会有一个相当复杂的工作……

好消息是,从TMS Software开始有一个新版本的TNTControls支持D2009.我没有看过这个,但是期望它只是原生VCL组件上的“外观”层,以便于移植.我会考虑如果你的其他库可以重建使用它.

但是,您可能最好回到本机VCL控件,原因是字符串类型. TNT控件一直使用WideString来回传递Unicode字符串,你可能已经通过自己的代码分散了WideString.这将起作用,但它并不理想,因为WideString实际上只是用于COM互操作,因为它“包装”了COM BSTR类型. D2009中的本机u??nicode字符串是引用计数的,应该明显更快.

如果您决定将TNT组件替换为本机VCL组件,则可以使用GExperts“替换组件”命令 – 或者,可以更轻松地在.DFM和.PAS文件中进行搜索和替换(您以文本形式进行搜索和替换)你不用T替换TTNT

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读