32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
|||||||||||
1 | |||||||||||
Обрезается сообщение в системе: клиент - сервер03.07.2012, 12:38. Показов 1281. Ответов 9
Метки нет (Все метки)
Изучаю "Самоучитель игры на WINSOCK".
Использую пример TCP клиента и сервера, при отправке сообщение серверу, оно возвращается уже обрезанным. Максимальное количество символов - 13. Как увеличить объем сообщения? Клиент
Не по теме: Как же долго помощь идет:cry:
0
|
03.07.2012, 12:38 | |
Ответы с готовыми решениями:
9
Обмен данными между двумя приложениями по системе клиент-сервер Взаимодействие WinCC с Labview 2013, как сервер-клиент, так и клиент-сервер Чат "Сервер-клиент". На сервер не могу отправить сообщение с клиента Клиент-сервер в один клик!(элемет сервер, клиент) |
03.07.2012, 13:03 | 2 | |||||
Пример обрезания покажи.
1
|
32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
|
03.07.2012, 13:16 [ТС] | 3 |
0
|
03.07.2012, 13:22 | 4 | |||||
Для того что в WSAStartup надо передавать адрес специальной структуры WSADATA, а не то что захочется.
1
|
32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
|
03.07.2012, 13:51 [ТС] | 5 |
тоесть в учебнике неправильно было?
Но я так понял, это не повлияет на мою проблему?
0
|
32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
||||||
03.07.2012, 14:24 [ТС] | 8 | |||||
исправил для клиента и сервера - все равно обрезает((((
Добавлено через 7 минут g_u_e_s_t, да, действительно, увеличел nsize при отправке и размер сообщения увеличился тоже, но почему программа из учебника не контролирует размер nsize? Что делает этот код? Объясните пожалуйста
0
|
1259 / 650 / 44
Регистрация: 06.02.2011
Сообщений: 1,654
|
|
03.07.2012, 14:32 | 9 |
Нужно не увеличивать nsize, а отправлять ровно столько сколько ввел пользователь, strlen() туда так и просится.
Вы так спрашиваете, будто это я какой-то учебник написал
1
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
|
03.07.2012, 14:40 | 10 |
Этот код принимает из сокета my_sock сообщение (или его часть), кладет в буфер buff и возвращает количество прочитанных из сокета байт.
Обрати внимание: никто не гарантирует, что за одно обращение к функции recv ты прочитаешь из сокета все соообщение сразу. Ты можешь получить только его часть. Оставшиеся части ты получишь при следующих обращениях к recv, и их надо будет "склеить" вместе для получения полного текста сообщения. Таково уж устройство протокола TCP. Как уж ты разберешься, где у тебя заканчивается одно сообщение (например, "мама мыла раму"), и начинается другое ("саша ела кашу") - это вопрос твоего прикладного логического протокола, работающего поверх TCP.
1
|
03.07.2012, 14:40 | |
03.07.2012, 14:40 | |
Помогаю со студенческими работами здесь
10
TCP клиент -сервер, не отправляется сообщение клиентам Сообщение между независимыми одинаковыми программами, Многопоточка или Клиент-Сервер Клиент-Серверное приложение. Как сделать, чтобы сервер сам отправлял сообщения на клиент Клиент-серверное приложение. Сервер - ПК, клиент - телефон (Android) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |