VB.net tcp client-server обмен несколькими сообщениями

интернет программирование windows сервер .net

Я для удобства пишу ремоут программу,основанную на tcp client-server .
Клиент отправляет папку, сервер сканирует эту папку,и отправляет клиенту список вложенных папок.
Так вот,я понаписал литры кода и сделал мониторинг на консоли сервера,там все нормально,отдельно.
Но(даже при отправке циклом) пакетов,хранящихв себе путь к каждой папке. Почему-то на клиент все это приходит 1 строкой.
Собственно,вопрос;
Как реализовать принятие каждого пакета отдельно,чтобы как я отправлял циклом каждоый пакет с путем к папке,так и получал,по 1.(что отправляю,что получаю я циклом While , FOr тоже юзал)
Ответы:
С точки зрения TCP у Вас не пакеты, а непрерывный поток байт. Для клиента, получившего 1000 байт, нет никакой разницы были ли они отправлены одним куском или нет, или, может быть, это всего лишь часть отправленного "пакета". Так что и писать обмен данными по TCP надо исходя из потока, а не пакетов. Можно, например, в начале каждого блока данных указывать его размер, чтобы получающая сторона могла быть уверенна, что получила весь блок данных и ничего кроме него.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

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

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.