Сокеты Windows в MFC
Примечание.
MFC поддерживает сокеты Windows 1, но не поддерживает сокеты Windows 2. Сокеты Windows 2 впервые поставляется с Windows 98 и является версией, включенной в Windows 2000.
MFC предоставляет две модели для написания сетевых программ связи с сокетами Windows, воплощенными в двух классах MFC. В этой статье описаны эти модели и дополнительные сведения о поддержке сокетов MFC. "сокет" — это конечная точка связи: объект, через который приложение взаимодействует с другими приложениями сокетов Windows в сети.
Сведения о сокетах Windows, включая описание концепции сокета, см. в разделе "Сокеты Windows: фон".
Модели программирования сокетов
Две модели программирования сокетов Windows MFC поддерживаются следующими классами:
CAsyncSocket
Этот класс инкапсулирует API сокетов Windows. CAsyncSocket предназначен для программистов, которые знают сетевое программирование и хотят гибкости программирования непосредственно в API сокетов, но также хотят удобства функций обратного вызова для уведомления о сетевых событиях. Кроме упаковки сокетов в объектно-ориентированной форме для использования в C++, единственная дополнительная абстракция этого класса преобразует определенные сообщения Windows, связанные со сокетами, в обратные вызовы. Дополнительные сведения см. в статье "Сокеты Windows: уведомления сокетов".
CSocket
Этот класс, производный от
CAsyncSocket
, предоставляет более высокий уровень абстракции для работы с сокетами через объект CArchive MFC. Использование сокета с архивом значительно напоминает протокол сериализации файлов MFC. Это упрощает использование, чемCAsyncSocket
модель. CSocket наследует многие функции-члены отCAsyncSocket
этого инкапсулирования API сокетов Windows; вам придется использовать некоторые из этих функций и понимать программирование сокетов в целом. НоCSocket
управляет многими аспектами взаимодействия, которые необходимо сделать самостоятельно с помощью необработанного API или классаCAsyncSocket
. Самое главное,CSocket
обеспечивает блокировку (с фоновой обработкой сообщений Windows), что важно для синхронной операцииCArchive
.
Создание и использование CSocket
CAsyncSocket
объектов описано в сокетах Windows: использование сокетов с архивами и сокетами Windows: использование класса CAsyncSocket.
Библиотеки DLL сокетов Windows
Операционные системы Microsoft Windows предоставляют библиотеки динамических ссылок (DLL). Visual C++ предоставляет соответствующие файлы заголовков и библиотеки и спецификацию сокетов Windows.
Дополнительные сведения о сокетах Windows см. в следующем разделе: