Этот код работает:clientStream.Read возвращает неверное число байтов
TcpClient tcpClient = (TcpClient)client;
NetworkStream clientStream = tcpClient.GetStream();
byte[] message = new byte[5242880];
int bytesRead;
bytesRead = clientStream.Read(message, 0, 909699);
Но это возвращает неверное число байтов:
bytesRead = clientStream.Read(message, 0, 5242880);
Почему? Как я могу это исправить?
(реальный размер данных 1475186, код возвращает 11043, как количество байтов)
Что означает, когда вы говорите «не работает»? –
И каждый раз, когда он возвращает новый номер для количества байтов – armin
Возможно, данные не отправляются сразу, а скорее делятся на пакеты. И те 11043 - размер первого пакета. Поэтому вам, вероятно, придется создать цикл вокруг 'Read'. – duedl0r