题
我想连接两台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
不隶属于 StackOverflow