Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Новые вопросы и ответы 5 (https://www.otvetnemail.ru/novye-voprosy-i-otvety-5-824/)
-   -   Непонятная проблема с приемом данных int в QTcpSocket (https://www.otvetnemail.ru/novye-voprosy-i-otvety-5-824/neponyatnaya-problema-s-priemom-dannyh-int-v-qtcpsocket-259094/)

Guest 28.09.2011 18:11

Непонятная проблема с приемом данных int в QTcpSocket
 
Всем привет. Столкнулся с такой проблемой и никак не могу найти объяснения. Есть сервер, к которому подключается клиент. И одна из функций, передача данных с QDAtaStream. Данные передаются так, сначала передается длина файла (в это время на клиенте принимается эта длина, и запускается for от 0 до длины. И по одному символу передаются байты файла. Вот кусок функции приема данных на клиенте:КодC++ (Qt)msger >> end;//QMessageBox::information(NULL, "", "", 0, 0); if (end != 0){ files = fopen(buf2.toAscii(), "wb"); //решил воспользоваться стандартными Си-шными методами записи файла for (i = 0; i < end; i++) { msger >> chr; putc(chr, files); } fclose(files);Вопрос такой: Если закомментить тот совершенно ненужный месседжбокс, то при пробегании цикла после пары килобайт файла начинают приниматься одни нули в переменнную chr. Если оставить месседжбокс, то все отлично принимается и записывается. Объясните пожалуйста, почему так, и можно ли как-то избавиться от зависимости от месседжбокса?


Часовой пояс GMT, время: 05:53.


© www.otvetnemail.ru - Форум вопросов и ответов.