Windows Sockets dans MFC
Notes
MFC prend en charge Windows Socket 1 mais ne prend pas en charge Windows Sockets 2.Windows Sockets 2 fut d'abord fourni avec Windows 98 et est la version est incluse dans Windows 2000.
MFC fournit deux modèles pour écrire des programmes de communication réseau avec Windows Sockets, incorporés dans deux classes de MFC. Cet article décrit ces modèles et davantages de détails de la prise en charge du protocole MFC. Un « socket » est un point de terminaison de communication : objet dans lequel l'application communique avec d'autres applications de Windows Socket sur un réseau.
Pour plus d'informations sur Windows Sockets, notamment une explication du concept de socket, consultez Windows Sockets : Arrière-plan.
Modèles de programmation de sockets
Les deux modèles de programmation de sockets MFC Windows sont pris en charge par les classes suivantes :
CAsyncSocket
Cette classe encapsule l'API de sockets Windows. CAsyncSocket est pour les programmeurs qui connaissent la programmation réseau et veulent la flexibilité de programmer directement sur l'API de sockets mais souhaitent aussi simplifier les fonctions de rappel pour les notifications d'événements réseau. Autres que les sockets d'empaquetage des formulaires orientés objet à utiliser en C++, la seule abstraction supplémentaire que la classe offre convertit certains messages windows liés aux sockets en rappels. Pour plus d'informations, consultez Protocole Windows : Notifications de socket.
CSocket
Cette classe dérivée, CAsyncSocket fournit une abstraction de niveau supérieur pour utiliser des sockets dans un objet MFC CArchive. L'utilisation d'un socket avec une archive ressemble fortement à l'utilisation d'un protocole de sérialisation de fichier dans MFC. Cela le rend plus simple à utiliser que le modèle CAsyncSocket. CSocket hérite de nombreuses fonctions membres deCAsyncSocket qui encapsulent les API de Windows Sockets ; vous devez utiliser certaines de ces fonctions et comprendre la programmation avec socket de manière générale. Mais CSocket gère de nombreux aspects de la communication que vous devriez faire vous-même en utilisant l'API brute ou la classe CAsyncSocket. Avant tout, CSocket fournit un blocage (avec traitement en arrière-plan des messages Windows), qui est essentiel au fonctionnement synchrone de CArchive.
La création et l'utilisation de CSocket et des objets CAsyncSocket est décrit dans Windows Sockets : utilisation de sockets d'archive et Windows Sockets : Utilisation de la classe CAsyncSocket.
Windows Sockets DLLs
Les systèmes d'exploitation Microsoft Windows fournissent des bibliothèques de liens dynamiques (DLL) Windows. Visual C++ fournit les fichiers d'en-tête et les bibliothèques appropriés et la spécification Windows Sockets.
Notes
Sous Windows NT et Windows 2000, la prise en charge de Windows pour les applications 16 bits est basée sur WINSOCK.DLL.Pour les applications 32 bits, la prise en charge est dans WSOCK32.DLL.Les API fournies sont identiques à la différence que les versions 32 bits ont des paramètres élargis à 32 bits.Sous Win32, la sécurité des threads est assurée.
Pour plus d'informations sur les Windows Sockets, consultez .
Windows Sockets : fonctionnement des sockets avec des archives
Windows Sockets : dérivation à partir des classes de sockets