Windows Sockets en MFC

Nota:

MFC admite Windows Sockets 1, pero no admite Windows Sockets 2. Windows Sockets 2 se incluye por primera vez con Windows 98 y es la versión incluida en Windows 2000.

MFC proporciona dos modelos para escribir programas de comunicaciones de red con Windows Sockets, incorporados en dos clases de MFC. En este artículo se describen estos modelos y se detalla la compatibilidad con sockets MFC. Un "socket" es un punto de conexión de comunicación: un objeto a través del cual su aplicación se comunica con otras aplicaciones de Windows Sockets a través de una red.

Para obtener información sobre Windows Sockets, incluida una explicación sobre el concepto de socket, consulte Windows Sockets: segundo plano.

Modelos de programación de sockets

Los dos modelos de programación de Windows Sockets de MFC son compatibles con las siguientes clases:

  • CAsyncSocket

    Esta clase encapsula la API de Windows Sockets. CAsyncSocket es para programadores con conocimiento de programación de redes y desean la flexibilidad de programar directamente en la API de sockets, pero también quieren la comodidad de las funciones de devolución de llamada para la notificación de eventos de red. Además de empaquetar sockets en un formato orientado a objetos para su uso en C++, la única abstracción adicional que proporciona esta clase consiste en convertir determinados mensajes de Windows relacionados con sockets en devoluciones de llamada. Para obtener más información, vea Windows Sockets: Notificaciones de socket.

  • CSocket

    Esta clase, derivada de CAsyncSocket, proporciona una abstracción de nivel superior para trabajar con sockets a través de un objeto CArchive de MFC. El uso de un socket con un archivo es muy similar al uso del protocolo de serialización de archivos de MFC. Por ello, su uso es más fácil que con el modelo CAsyncSocket. CSocket hereda muchas funciones miembro de CAsyncSocket que encapsulan las API de Windows Sockets; tendrá que usar algunas de estas funciones y comprender la programación de sockets en general. Sin embargo, CSocket administra muchos aspectos de la comunicación que tendría que hacer usted mismo mediante la API sin procesar o la clase CAsyncSocket. Lo más importante es que CSocket proporciona bloqueo (con procesamiento en segundo plano de mensajes de Windows), lo cual es esencial para la operación sincrónica de CArchive.

La creación y el uso de objetos CSocket y CAsyncSocket se describe en Windows Sockets: Uso de sockets con archivos y Windows Sockets: Uso de la clase CAsyncSocket.

DLL de Windows Sockets

Los sistemas operativos Microsoft Windows proporcionan las bibliotecas de vínculos dinámicos (DLL) de Windows Sockets. Visual C++ proporciona las bibliotecas y los archivos de encabezado adecuados y la especificación de Windows Sockets.

Para obtener más información sobre Windows Sockets: consulte:

Consulte también

Windows Sockets