Показать сообщение отдельно
Старый 20.07.2012, 17:45   #33
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Непонятки с TCP/IP

Сразу отвечаю, не читаю.

Ты проверяешь длину буффера так? А буффер уже создан давно, и ты лишь записываешь в него прочтённые данные так? Значит длина у него не будет соответствовать на самом деле длине принятых данных.
Плюс ты вроди как переиспользуешь буффер для приёма заголовка (4 байта) и затем в него же читаешь само сообщение, так?
Получается что в определённом сценарии, при попытки прочитать 4 байта заголовок, ничего не было прочитано, и в буфере будет 4 байта с прошлого буффера сообщения.
Если я ничего не упустил - это твоя проблема описана выше.
Она заключается в правильной проверке принятых данных и корректной реакции на не соответствия.
(Offline)
 
Ответить с цитированием