Wiki:Delphi 3rd 方 TCP/IP 组件库的最新技术

人气:647 发布:2022-10-16 标签: tcp delphi wiki delphi-2007 delphi-xe

问题描述

我已经有大约 18 个月没有使用裸机 TCP/IP,所以我想知道当前最先进的技术是什么.

I've not been doing bare metal TCP/IP for about 18 months, so I wonder what the current state of the art is.

我正在寻找积极和消极的方面,同时开发服务器和客户端软件.我将做一个需要坚如磐石的 TCP/IP 层的项目,所以对我来说这是一个重要的方面 :)

I'm looking for both positive and negative aspects, with development of both server and client software. I will be doing a project that needs a rock-solid TCP/IP layer, so for me that is an important aspect :)

为了使其成为社区维基,我正在寻找更广泛的答案,而不仅仅是坚如磐石".因此,例如有关特征宽度的信息也值得赞赏.

For this to become a community wiki, I'm looking for broader answers than just 'rock solid'. So for instance information about the feature-width is also appreciated.

我将使用答案中找到的相关方面更新问题,以便获得一个对这些库进行平衡概述的 wiki 条目.

I'll be updating the question with relevant aspects found in the answers in order to get a wiki entry that has a balanced overview of those libraries.

例如,根据我过去在 Indy 的经验,请参阅下面的回答我对 Indy 的异常处理和防冻很矛盾,虽然习惯了,但还是觉得有些不自然.

For example, see my answer below with my past experience with Indy I'm ambivalent on the exception handling and anti-freeze in Indy, though I got used to it, it still felt somewhat unnatural.

现在我在 Delphi 2007(非 Unicode)和 XE (Unicode) 中进行开发,所以我考虑的库应该至少支持这两个 Delphi 版本.

Right now I develop in both Delphi 2007 (non Unicode) and XE (Unicode), so the libraries I'm considering should support at least those two Delphi versions.

推荐答案

我过去使用 Indy 的经验总结,以及评论(感谢 尤金,Marjan)(请更新当前 Indy 的最新技术):

Summary of my past experience with Indy, and the comments (thanks Eugene, Marjan) (please update with the current Indy state of the art):

优点:

随 Delphi 提供成熟开发社区开源,所以很多人都在仔细检查这些来源源代码中包含大量有价值的评论文档OpenSSL 支持支持广泛的 Delphi 版本(包括 2007 和 XE)多种协议选择

缺点:

Delphi 附带的版本并不总是最稳定的;通常需要从源下载以获得稳定的构建(同时)大量重复的代码现在在 Delphi 中(但 Indy 需要与旧的 Delphi 版本兼容)并非所有 TCP/IP 组件都是最新的(例如,当时 POP3 客户端组件不支持一些基本的 POP3 命令)版本互操作性很痛苦:从一个 Indy 版本升级到另一个版本可能非常耗时我对 Indy 中的异常处理和防冻很矛盾,虽然我已经习惯了,但还是觉得有些不自然.在构建更新之间进行重大更改;ifdefs 需要适应这些不清楚发布状态(如果有的话),很长一段时间没有 RC,获取中继可能会使您的本地副本不稳定

207