我想连接两台PC并让它们进行通信。有一个不错的组件吗? (最好是来自TMS或免费),还是只使用标准的C ++套接字库?

如何发送数据呢?我应该发明一个简单的协议吗? tlv(类型/长度/值),其中t是消息类型,..您得到图片...

有帮助吗?

解决方案

由于您使用的是C ++构建器,因此您应该真正使用Indy组件,它们是一个很好的测试良好,易于使用一组网络组件……而且它们已经内置在C ++构建器中。如果您使用的是C ++构建器,则使用QT或Boost确实会出现问题(当然取决于C ++构建器版本)。

Indy组件: http://www.indyproject.org/index.en.aspx

使用Indy组件,您基本上需要所有需要的网络开发所需的所有组件,这是迄今为止我看到的C ++构建器/Delphi的最完整的网络解决方案。

您可能会发现这篇文章很有趣: 使用Indy组件开发基于TCP/IP的服务器应用程序[1 它显示了Delphi中的示例,但是转换为C ++应该是微不足道的。

除了 深度[2 书是一个很好的资源,也包含C ++中的样本。

关于制定自己的协议,几乎不可能通过确定的答案回答这个问题,这实际上取决于您的要求。也许您应该首先要问,是否有现有的协议对我有用,在您最终重新发明方向盘之前。

[1] http://conferences.embarcadero.com/article/33256
[2] http://www.atozed.com/indy/book/index.en.aspx

其他提示

你应该看 QT 或者 促进. 。 (我个人更喜欢QT的网络API和文档,但是您可能会有所不同。)

对于简单的事情,您为什么要发明自己的协议?只需使用HTTP即可。它很容易使用,您可以使用各种工具,而不仅仅是您自己的代码,以验证一切正常。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top