Всем привет. Столкнулся с такой проблемой и никак не могу найти объяснения. Есть сервер, к которому подключается клиент. И одна из функций, передача данных с 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. Если оставить месседжбокс, то все отлично принимается и записывается. Объясните пожалуйста, почему так, и можно ли как-то избавиться от зависимости от месседжбокса?
|