首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TTcpClient/TTcpServer与TClientSocket/TServerSocket有什么区别?

TTcpClient/TTcpServer与TClientSocket/TServerSocket有什么区别?
EN

Stack Overflow用户
提问于 2014-09-25 18:52:10
回答 1查看 2.6K关注 0票数 4

谁能解释一下他们之间的区别吗?他们是一样的,工作的方式相同吗?哪一个比其他组件更好?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-25 22:36:17

他们不一样,他们的工作方式也不一样。它们在套接字API交互、事件处理、错误处理等方面采取了非常不同的方法。

TClientSocketTServerSocket是最初的基于VCL的(特定于Windows的)套接字组件.它们在Delphi 7中被废弃,在默认情况下不再安装,但是如果您想使用它们,仍然可以手动安装。

TTcpClientTTcpServer最初是在Delphi6中作为Kylix (一种死产品)的跨平台套接字解决方案而引入的。他们被从德尔菲的XE6中删除,降级到演示状态,甚至不再是官方组件。

在我看来,TTcpClientTTcpServer是可怕的组件,您应该远离它们。他们使用极简主义的“最不常见的妖魔化者”方法来进行跨平台编程,只满足多个平台所支持的几个基本功能,而不是利用任何特定于平台的特性或更高级别的功能。他们有一个非常基本的界面,这是糟糕的设计。它们很难使用,错误处理能力很差,使用起来也不太灵活。

如果您需要编写新的套接字代码,如果您只对支持Windows感兴趣,那么TClientSocketTServerSocket工作得很好,但是如果您需要支持跨平台,那么您应该使用第三方套接字库,例如印第 (TIdTCPClient/TIdTCPServer)、科技中心 (TWSocket/TWSocketServer)、突触 (< code >D15)等等。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26045985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档