从Delphi7迁移到Delphi XE或2010用于Unicode?

kil*_*ode 6 delphi delphi-7 delphi-2010 delphi-xe

ive新闻服务器基于Delphi7构建,使用Indy9 TIdTCPServer,客户端使用ScktComp的TClientSocket作为大小,流量在RC4中加密(字符串)

我需要使用Unicode支持让我的应用程序在XE或2010上运行吗?我必须改变这些东西呢?

Moh*_*man 5

Unicode已在Delphi 2009中引入,因此如果您需要unicode支持,可以使用Delphi 2009.

但是如果您要升级,获得最新版本,您可以获得Delphi 2010的所有好处,减少错误,并将更多第三方工具与Delphi XE捆绑在一起.

你可能遇到的另一个问题是Indy 9和Indy 10之间的转换,因为Indic 10增加了unicode支持,但它与Indy 9并不是100%兼容.

我建议你尝试用Delphi 7和Indy 10编译你的应用程序,然后再用Indy 10移动到Delphi XE.


小智 0

不知道 XE 和 2010 是否仍支持 Indy 9。Indy 10 有改进,但也有一些重大变化。恕我直言,将二进制数据移动到字符串中从来都不是一个好的选择,但根据情况,它可能只需要一些小的改变。您到底需要什么取决于您的应用程序代码 - 如果不实际查看就很难说。应检查所有字符串操作例程,特别是如果将它们用作低级二进制缓冲区,并选择最适合将它们移植到 Unicode 世界的路径。