ive 一个基于 Delphi7 的新闻服务器,使用 Indy9 TIdTCPServer,客户端使用 ScktComp 的 TClientSocket 作为大小,流量在 RC4 中加密(字符串)
我到底需要什么才能让我的应用程序在支持 Unicode 的 XE 或 2010 上运行?我必须改变这些事情中的哪些?
ive 一个基于 Delphi7 的新闻服务器,使用 Indy9 TIdTCPServer,客户端使用 ScktComp 的 TClientSocket 作为大小,流量在 RC4 中加密(字符串)
我到底需要什么才能让我的应用程序在支持 Unicode 的 XE 或 2010 上运行?我必须改变这些事情中的哪些?
Unicode 已在 Delphi 2009 中引入,因此如果您想要 Unicode 支持,您可以使用 Delphi 2009 来实现。
但是,如果您要升级,获得最新版本,您可以获得 Delphi 2010 的所有好处,同时减少错误和更多与 Delphi XE 捆绑的第三方工具。
您可能面临的另一个问题是 Indy 9 到 Indy 10 之间的转换,因为在 Indy 10 中添加了 unicode 支持,但它也不是 100% 与 Indy 9 兼容。
我建议您尝试使用 Delphi 7 和 Indy 10 编译您的应用程序,然后再使用 Indy 10 迁移到 Delphi XE。
不知道 XE 和 2010 是否仍支持 Indy 9。Indy 10 有改进,但也有一些重大变化。恕我直言,将二进制数据移动到字符串中从来都不是一个好的选择,但根据情况,它可能只需要一些小的改动。您究竟需要什么取决于您的应用程序代码 - 不实际查看很难说。应该检查所有字符串操作例程,尤其是当您将它们用作低级二进制缓冲区时,以及选择哪条路径最适合将它们移植到 Unicode 世界。