Итак, у меня есть TClientSocket, который должен получить более 10 КБ данных в одном событии OnRead.Но когда событие инициируется, оно получает только 8 КБ данных, затем событие запускается снова с остальными данными.
Почему это происходит?
Поскольку TCP является потоковым протоколом, а не на основе сообщений. Вы должны получить все, что вам было отправлено, объединить его в один поток данных, а затем проанализировать поток в соответствии с используемым протоколом.
Вам необходимо написать согласованный между сервером и клиентом протокол, который будет сигнализировать об окончании сообщения, а затем анализировать потоковую передачу для завершения сообщений.