CSocket

Клас CSocket походить від CAsyncSocket і успадковують його інкапсуляції Windows Sockets API. CSocket об'єкт являє собою більш високий рівень абстракції Windows Sockets API, ніж CAsyncSocket об'єкт. CSocket працює з класів, CSocketFile і CArchive , керувати відправлення та прийом даних.

CSocket об'єкт також забезпечує блокування, яка має важливе значення для синхронні операції CArchive. Блокування функції, такі як отримати, Надіслати, ReceiveFrom, SendToі прийняти (все успадкованих від CAsyncSocket), не повернутися WSAEWOULDBLOCK помилка в CSocket. Замість цього, ці функції Дочекайтеся завершення операції. Крім того, вихідний дзвінок буде припинити через помилку WSAEINTR , якщо CancelBlockingCall називається, хоча один з цих функцій блокує.

Використання об'єкта CSocket , закликаємо Конструктор, а потім зателефонуйте Створити , щоб створити основні SOCKET маркер (тип SOCKET). Параметри за замовчуванням Створити створити потік розетку, але використовується сокет з CArchive об'єктом, можна вказати параметр, щоб створити дейтаграм розетка, замість цього, або прив'язати до певного порту створити сервер сокет. Підключити до розетки клієнта за допомогою підключення на стороні клієнта і прийняти на стороні сервера. Потім створити об'єкт CSocketFile і пов'язати його до CSocket об'єкта в CSocketFile Конструктор. Далі, створити CArchive об'єкт для відправки і для отримання даних (за потреби), а потім пов'язати їх з CArchive Конструктор, об'єкт CSocketFile . Коли зв'язок повний, знищити CArchive, CSocketFileта CSocket об'єктів. Тип даних SOCKET описаний у статті Windows Sockets: фон в Visual C++ програміста керівництво.

For more information, see Windows Sockets in MFC, Windows Sockets: Using Sockets with Archives, Windows Sockets: How Sockets with Archives Work, Windows Sockets: Sequence of Operations, Windows Sockets: Example of Sockets Using Archives, and related articles in Visual C++ Programmer’s Guide. Also see Overview of Windows Sockets 2 and Windows Sockets Programming Considerations in the Win32 SDK documentation.

# включити lt;afxsock.h>

|&Nbsp членів класу ; Базовий клас | Ієрархічна діаграма

Зразок  MFC зразок CHATSRVR

Дивіться також CAsyncSocket, CSocketFile

Index