0

2台のPCを接続して通信させたい。それを行うための優れたコンポーネントはありますか?(できればTMSから、または無料で)、または標準のC++ソケットライブラリを使用するだけですか?

データの送信についてはどうですか?簡単なプロトコルを発明する必要がありますか? TLV (タイプ/長さ/値)、ここで T はメッセージ タイプで、.. 画像を取得します...

4

2 に答える 2

4

C++ Builder を使用しているので、実際には Indy コンポーネントを使用する必要があります。これらは十分にテストされており、ネットワーク コンポーネントのセットで簡単に操作できます...そして、それらは既に C++ Builder に組み込まれています。C++ Builder を使用している場合、Qt または boost を使用すると非常に問題が発生する可能性があります (もちろん、C++ Builder のバージョンによって異なります)。

Indy コンポーネント: http://www.indyproject.org/index.en.aspx

Indy コンポーネントを使用すると、基本的にあらゆる種類のネットワーク開発に必要なすべてのコンポーネントを取得できます。これは、私が見た C++Builder/Delphi 向けの最も完全なネットワーク ソリューションです。

この記事は興味深いかもしれません: Indy コンポーネントを使用した TCP/IP ベースのサーバー アプリケーションの開発 [1]では、Delphi での例を示していますが、C++ への変換は簡単です。

さらに、Delphi in Depth [2]の書籍は優れたリソースであり、C++ のサンプルも含まれています。

独自のプロトコルの開発については、その質問に明確な答えを出すことはほとんど不可能です。それは実際にあなたが持っている要件に依存します. おそらく、車輪を再発明することになる前に、私にとってうまくいく既存のプロトコルがあるかどうかを尋ねることから始めるべきでしょう.

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

于 2010-02-11T19:33:42.653 に答える
1

QtまたはBoostを確認する必要があります。(私は個人的に Qt のネットワーク API とドキュメントを好みますが、あなたは違うと感じるかもしれません。)

そして、簡単なことのために、なぜ独自のプロトコルを発明するのでしょうか? HTTPを使用するだけです。操作が簡単で、独自のコードだけでなく、あらゆる種類のツールを使用して、すべてが適切に機能していることを確認できます。

于 2010-02-11T10:22:44.633 に答える