Какие аргументы я передаю клиенту при запуске примеров сокетов boost::asio

Я изучаю, как использовать библиотеки boost asio, и использую примеры UDP в Visual Studio 2008. Я скомпилировал и запустил серверное приложение (имя udp_server.exe). Я попытался запустить клиентское приложение, но оно подключается к серверу. Как указать имя хоста и службы для приложения для подключения. Я указал имя машины, но получаю сообщение об ошибке "Не удалось установить соединение, поскольку целевая машина активно отказалась от него". Есть ли какие-то предварительные настройки, которые мне нужно выполнить на моем компьютере с Windows 7, чтобы примеры заработали?


person dubnde    schedule 10.06.2010    source источник


Ответы (1)


Предположим, что вы имеете в виду "дневное время. 4 — Пример синхронного дневного клиента UDP», имя хоста сервера передается как argv[1] (первый параметр командной строки) в udp::resolver::query ctor. Как видно из документации, порт передается как третий параметр в ctor. Этот параметр может быть строковым представлением номера порта или «имени службы». Цитирование документов об этом:

В системах POSIX имена служб обычно определяются в файле /etc/services. В Windows имена служб можно найти в файле c:\windows\system32\drivers\etc\services.

Если все в порядке, но соединение по-прежнему не удается, проверьте настройки брандмауэра на сервере, чтобы убедиться, что он разрешает соединения на выбранном порту.

person Éric Malenfant    schedule 10.06.2010