1

私はwinsockプログラミングのコンポーネントが好きではなかったので、自然な方法で好きでしたが、今日、同僚からプロジェクトにIndyを使用するように言われました。Indyが私のプロジェクトに適しているかどうか教えてください。-2つのTCPサーバー、2つのTCPクライアント。合計4つのソケット-プロジェクトはプロキシです。

そして今、2番目の質問ですが、WSAASyncSelectは良くなく、予測可能であると毎日読んでいます。これはwinsock 1.1からのものです。私の質問は、AsyncSelectよりも優れたものを手作業で提案することです。

ありがとうございました。

4

3 に答える 3

2

私の好みは、軽量で理解しやすいアプローチのため、すべてのソケット作業でシナプスに頼る傾向があります。これはコンポーネント アーキテクチャではありませんが、クラス アーキテクチャと実装は通常、既存のヘルパー クラスの 1 つをコピーして変更するだけで、必要な手順を正確に実行できます。Synapse には優れたユーザー コミュニティもあり、活発に開発されているため、svn スナップショットから最新の変更を入手してください (リビジョン 98 だと思います。Web サイトにはリビジョン 38 の zip があります)。

于 2009-08-14T16:57:51.780 に答える
1

はい、インディのほうがいいです。ICS、Synapse、またはその他のインターネット関連のコンポーネント セットも同様です。それらはすべての詳細を処理し、通信層の詳細に時間を浪費する代わりに、アプリケーションの実際の機能に取り組むことができます。また、ユーザー ベースが広く、ハードウェアとオペレーティング システムの範囲が広いため、独自のコードよりもはるかによくテストされています。

NIH (Not Invented Here) は、適切に構築され、適切に維持され、広く使用されている代替手段が利用可能である場合、特にそれらの代替手段がソース付きで無料である場合 (Indy や ICS など)、本当に悪い考えです。

于 2009-08-14T15:25:58.897 に答える
1

はい、Indy は Winsock 通信の一貫した抽象化を提供するため、はるかに優れています。違いは、WinApi を使用してウィンドウを作成し、単に TForm を使用してウィンドウを作成するようなものです。

于 2009-08-14T11:23:21.920 に答える