Freigeben über


Windows-Sockets in MFC

Hinweis

MFC-Unterstützungs-WindowsSockets 1 unterstützt jedoch nicht Windows Sockets 2.Die Windows Sockets 2 zuerst versandt mit Windows 98 und ist die Version, die mit Windows 2000 enthalten ist.

MFC stellt zwei Modelle für das Schreiben von Netzwerkkommunikationsprogrammen mit Windows Sockets, dargestellt in zwei MFC-Klassen. Dieser Artikel beschreibt diese Modelle und weitere Socketunterstützung der Details MFC. Ein "Socket" ist ein Endpunkt der Kommunikation zu: ein Objekt, durch das die Anwendung andere Windows Socket-Anwendungen über ein Netzwerk ist.

Informationen zu Windows Sockets, einschließlich einer Erklärung des Socketkonzepts, finden Sie unter Windows Sockets: Hintergrund.

Socket-Programmiermodelle

Die zwei MFC-WindowsSocket-Programmiermodelle werden von den folgenden Klassen unterstützt:

  • CAsyncSocket

    Diese Klasse kapselt die Windows Sockets API. CAsyncSocket ist für Programmierer, die Netzwerkprogrammierung kennen und Flexibilität der direkte Programmierung Sockets zur API möchten, jedoch keine auch die Vorteile von Rückruffunktionen für eine Benachrichtigung über Netzwerkereignissen. Anders als Verpackungssockets in der objektorientierten Form für C++, konvertiert die einzige zusätzliche Abstraktion, die diese Klasse angibt, bestimmte Socket-verknüpfte Windows-Meldungen in Rückrufe. Weitere Informationen finden Sie unter Windows Sockets: Socket-Benachrichtigungen.

  • CSocket

    Diese Klasse, abgeleitet von CAsyncSocket, stellt eine höhere Abstraktionsebene für Sockets durch ein Objekt MFC- CArchive. Verwenden eines Sockets mit einem Archiv ähnelt groß mithilfe des Datei-Serialisierungsprotokolls MFC. Dies vereinfacht das CAsyncSocket als Modell verwenden. CSocket erbt zahlreiche Memberfunktionen von CAsyncSocket, die Windows Socket-APIs kapseln; Sie müssen einige dieser Funktionen verwendet und die Sockets verstehen, die allgemein programmieren. CSocket verwaltet jedoch zahlreiche Aspekte der Kommunikation, dass Sie entweder mithilfe unformatierter API zu tun würden oder CAsyncSocket- Klasse müssen. Am wichtigsten ist, stellt CSocket das Blockieren mit (Hintergrundverarbeitung von Windows-Meldungen), das dem Gleichlaufbetrieb von CArchive erforderlich ist.

Das Erstellen und Verwenden von CSocket und CAsyncSocket-Objekten wird in Windows Sockets: Verwenden der Archiven Sockets mit und Windows Sockets: Verwenden der Klasse CAsyncSocket beschrieben.

Windows Socket-DLLs

Die Microsoft Windows-Betriebssysteme stellen die Windows Socket-DynamicLink Librarys (DLL). Visual C++ stellt die entsprechenden Headerdateien und Bibliotheken und die Windows Socket-Spezifikation.

Hinweis

Unter Windows NT und Windows 2000 ist Windows Socket-Unterstützung für 16-Bit-Anwendungen auf Grundlage WINSOCK.DLL.Für 32-Bit-Anwendungen lautet die Unterstützung in WSOCK32.DLL.Die APIs, die bereitgestellt werden, sind identisch, nur die 32-Bit-Version verfügen über Parameter, die zu 32 Bits erweitert werden.Bei Win32 Threadsicherheit wird angegeben.

Weitere Informationen über Windows Sockets, finden Sie unter:

Siehe auch

Konzepte

Windows-Sockets