четверг, 5 января 2012 г.

Введение в Windows Sockets API: Проект программы

С этой статьи начинается практическая часть в серии статей, посвященной сетевому программированию в Windows. В ней я изложу краткое техническое задание для разработки программы, которая может обмениваться сообщениями с другими процессами.

Конечная программа будет сочетать в себе как функционал клиентских приложений, так и серверных. То есть будет не только подключаться к сторонним процессам, но и сама принимать входящие подключения.

вторник, 3 января 2012 г.

Введение в Windows Sockets API: Серверные сокеты C++

Входящие подключения со стороны сторонних приложений обрабатываются через специальный серверный (слушающий) сокет, который создается на стороне сервера с привязкой к конкретному порту.

Примером программы, использующей серверные сокеты, может служить приложение, обрабатывающие некую телеметрическую информацию, поступающую от дочерних приложений-клиентов. Приложение-сервер создает слушающий сокет с привязкой к конкретному порту и уходит в режим ожидания подключений (можно создать отельный поток для ожидания подключений, чтобы программа "не висла"). Приложение-клиент подключается к слушающему сокету, после чего можно начинать обмен данными.

воскресенье, 1 января 2012 г.

Введение в Windows Sockets API: Клиентские сокеты C++

Клиентские сокеты используют приложения, которым необходимо передавать и принимать данные с другим приложением. Примером такого приложения является браузер: по определенному ip-адресу он передает серверу сформированный HTTP-заголовок, в качестве ответа сервер передает данные, которые затребовал в HTTP-заголовке клиент (web-страницу, изображение и т.п.).
В этой статье я расскажу о средствах WSA, необходимых для реализации передачи данных между процессами через клиентские сокеты.