Windows-Sockets in MFC

Hinweis

MFC unterstützt Windows Sockets 1, aber nicht Windows Sockets 2. Windows Sockets 2 wurde zuerst mit Windows 98 ausgeliefert und ist die Version, die in Windows 2000 enthalten ist.

MFC stellt zwei Modelle zum Schreiben von Netzwerkkommunikationsprogrammen mit Windows Sockets zur Verfügung, die in zwei MFC-Klassen enthalten sind. In diesem Artikel werden diese Modelle beschrieben, und es werden weitere Details zur Unterstützung von MFC-Sockets beschrieben. Ein "Socket" ist ein Endpunkt der Kommunikation: ein Objekt, über das Ihre Anwendung mit anderen Windows Sockets-Anwendungen über ein Netzwerk kommuniziert.

Informationen zu Windows Sockets, einschließlich einer Erläuterung des Socketkonzepts, finden Sie unter Windows Sockets: Background.

Sockets-Programmiermodelle

Die beiden MFC Windows Sockets-Programmiermodelle werden von den folgenden Klassen unterstützt:

  • CAsyncSocket

    Diese Klasse kapselt die Windows Sockets-API. CAsyncSocket ist für Programmierer vorgesehen, die die Netzwerkprogrammierung kennen und die Flexibilität der Direkten Programmierung an die Sockets-API wünschen, aber auch rückruffunktionen für die Benachrichtigung über Netzwerkereignisse nutzen möchten. Abgesehen vom Packen von Sockets in objektorientierter Form für die Verwendung in C++ ist die einzige zusätzliche Abstraktion, die diese Klasse bietet, die Konvertierung bestimmter socketbezogener Windows Nachrichten in Rückrufe. Weitere Informationen finden Sie unter Windows Sockets: Socketbenachrichtigungen.

  • CSocket

    Diese von CAsyncSocketabgeleitete Klasse stellt eine Abstraktion auf höherer Ebene für die Arbeit mit Sockets über ein MFC-CArchive-Objekt zur Verfügung. Die Verwendung eines Sockets mit einem Archiv ähnelt stark der Verwendung des Dateiserialisierungsprotokolls von MFC. Dies erleichtert die Verwendung als das CAsyncSocket Modell. CSocket erbt viele Memberfunktionen von , CAsyncSocket die Windows Sockets-APIs kapseln. Sie müssen einige dieser Funktionen verwenden und die Socketprogrammierung im Allgemeinen verstehen. Verwaltet jedoch CSocket viele Aspekte der Kommunikation, die Sie selbst mithilfe der unformatierten API oder der Klasse CAsyncSocketdurchführen müssten. Vor allem CSocket stellt eine Blockierung (mit Hintergrundverarbeitung von Windows Nachrichten) bereit, die für den synchronen Betrieb von CArchiveunerlässlich ist.

Das Erstellen und Verwenden von CSocket - und CAsyncSocket -Objekten wird unter Windows Sockets: Using Sockets with Archives and Windows Sockets: Using Class CAsyncSocket (Verwenden von Sockets mit Archiven und Windows Sockets: Verwenden der Klasse CAsyncSocket) beschrieben.

Windows Sockets-DLLs

Die Microsoft Windows-Betriebssysteme stellen die Dynamic Link Libraries (DLL) Windows Sockets zur Verfügung. Visual C++ stellt die entsprechenden Headerdateien und Bibliotheken sowie die Windows Sockets-Spezifikation zur Verfügung.

Weitere Informationen zu Windows Sockets finden Sie unter:

Weitere Informationen

Windows Sockets