MFC における Windows ソケット

注意

MFC は Windows Sockets 1 をサポートしますが、 Windows sockets 2はサポートしていません。 Windows Sockets 2 は windows 98 に付属しており、windows 2000 に含まれるバージョンです。

MFC には、Windows ソケットを使用したネットワーク通信プログラムを作成するための2つのモデルが用意されています この記事では、これらのモデルについて説明し、MFC ソケットのサポートについて詳しく説明します。 "Socket" は通信のエンドポイントであり、アプリケーションがネットワーク経由で他の Windows Sockets アプリケーションと通信するために使用されるオブジェクトです。

ソケットの概念の説明など、Windows ソケットの詳細については、「 Windows sockets: Background」を参照してください。

ソケットプログラミングモデル

2つの MFC Windows Sockets プログラミングモデルは、次のクラスによってサポートされています。

  • CAsyncSocket

    このクラスは、Windows Sockets API をカプセル化します。 CAsyncSocket は、ネットワークプログラミングについて理解していて、ソケット API に直接プログラミングする柔軟性を必要としているが、ネットワークイベントの通知にコールバック関数の利便性を必要としているプログラマを対象としています。 C++ で使用するためにオブジェクト指向の形式でソケットをパッケージ化する以外に、このクラスが提供する唯一の抽象化は、特定のソケット関連の Windows メッセージをコールバックに変換することです。 詳細については、「 Windows ソケット: ソケット通知」を参照してください。

  • CSocket

    から派生したこのクラスは、 CAsyncSocket MFC の CArchive オブジェクトを介してソケットを操作するための、より高いレベルの抽象化を提供します。 アーカイブでソケットを使用することは、MFC のファイルシリアル化プロトコルを使用する場合とよく似ています。 これにより、モデルよりも使いやすくなり CAsyncSocket ます。 CSocket は、 CAsyncSocket Windows ソケット api をカプセル化するの多くのメンバー関数を継承します。これらの関数のいくつかを使用し、一般的にソケットプログラミングについて理解する必要があります。 では、 CSocket 未加工の API またはクラスを使用して自分で行う必要がある通信の多くの側面を管理し CAsyncSocket ます。 最も重要な CSocket のは、(Windows メッセージをバックグラウンドで処理する) ブロックを提供することです。これは、の同期操作に不可欠です CArchive

およびオブジェクトの作成と使用 CSocket CAsyncSocket については、「 Windows ソケット: アーカイブおよび windows ソケットでのソケットの使用 : CAsyncSocket クラスの使用」を参照してください。

Windows ソケット Dll

Microsoft Windows オペレーティングシステムには、Windows Sockets ダイナミックリンクライブラリ (DLL) が用意されています。 Visual C++ には、適切なヘッダーファイルとライブラリおよび Windows ソケット仕様が用意されています。

Windows ソケットの詳細については、次を参照してください。

関連項目

Windows ソケット