Здравствуйте, гость ( Вход | Регистрация )
DICKobraz | Дата 14.8.2009, 19:46 |
Цитата (int)sizeof(quint16) Все правильною Ты сам себя ограничил 64к максимальное значение blockSize = 0xffff, т.е. 65535 или 64k Спасибо большое!Просто исправил на unsigned int все как надо работает!Я в начале за основу взял пример сервера передающего текстовые сообщения поэтому так и оставался 16 битовый инт. |
|
igor_bogomolov | Дата 13.8.2009, 17:55 |
kuzulis, blockSize у нас определяет, какое количество бат мы должны получить. // здесь мы проверяем, пришло ли достаточное количество данных, чтобы считать значение blockSize
// иначе считываем, в данном случае 4 байта, т.е. int
Максимальное значение инта 4294967295. теперь мы ограничены этим количеством байт. Ранее были ограничены 65536 байтами или 64 килобайтами |
|
kuzulis | Дата 13.8.2009, 13:37 |
Цитата Тогда уж int blockSize = 0; .... .... if (tcpSocket->bytesAvailable() < sizeof(int)) return; in >> blockSize; а тут вы ограничиваете 4-мя байтами, т.к. sizeof(int) = 4 ну никак не 64K |
|
igor_bogomolov | Дата 13.8.2009, 8:58 |
будет равно 2 (байта), а не 64к А я такого и не писал Цитата максимальное значение blockSize = Максимальное значение которое можно записать в два байта 65535 или 65535 / 1024 = 64 к Вот оно и ограничение. Тогда уж
|
|
Litkevich Yuriy | Дата 13.8.2009, 8:37 |
sizeof(quint16) будет равно 2 (байта), а не 64к |
|
igor_bogomolov | Дата 12.8.2009, 21:53 |
Цитата (int)sizeof(quint16) Все правильною Ты сам себя ограничил 64к максимальное значение blockSize = 0xffff, т.е. 65535 или 64k |
|
DICKobraz | Дата 12.8.2009, 20:45 |
Вобщем, вот часть клиента:
Любой переданый от сервера фаил обрезается до 64k.Как я понимаю проблема такая же как была описана выше,вот и хотелось бы узнать каким образом ожидать пока все пришедшие bytesavalible() данные будут готовы для чтения? |
|
kuzulis | Дата 12.8.2009, 7:44 |
Цитата Добрый день! У меня похожая проблема с ограничением в размере,можно узнать как от нее избавится?Что-то добавить в цикл while? Какое такое ограничение? посмотрите исходники examples\network\loopback\ |
|
DICKobraz | Дата 12.8.2009, 1:27 |
Добрый день! У меня похожая проблема с ограничением в размере,можно узнать как от нее избавится?Что-то добавить в цикл while? | |
Rastorev | Дата 30.3.2009, 23:22 |
Цитата Вы знаете, что произойдёт, если в tofile попадёт -1 ? Указывающая на то, что при получении произошла ошибка. Вы все правильно описали что должно произойти. Вся загвостка оказалась куда более простая чем я думал!!С принимающей стороны надо было ожидать пока все пришедшие bytesavalible() данные будут готовы для чтения |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 28.4.2024, 10:08 |