Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.08.2012, 22:21   #1
Dmitry_B
Пользователь
 
Регистрация: 29.03.2009
Сообщений: 83
По умолчанию Проблемы с чтением из COM-порта

Прошу совета.
Работаю в Visual С++ 6.0 в Windows 7.
При запуске и среды, и компилятора, система предупреждает о проблемах с совместимостью (игнорирую).
В программе: в бесконечном цикле читаю (ReadFile) данные из COM - порта, поступающие массивами по 6 байт в каждом. Скорость 115.2 кбит/с.
Проверяю в каждом считанном массиве второй байт – он должен быть константой.
В случае, если байт не совпадает с эталоном, выдаю сообщение в Message Box. В этом сообщении отображаю байты «аварийного» массива и предыдущего массива.
После запуска в Release-варианте первые несколько секунд / десятков секунд несовпадений нет, затем появляется сообщение об ошибке.
Из сообщения ясно, что в массиве, предшествующем «аварийному», один – два байта пропали, а взамен пропавших ReadFile взяла недостающее количество байт из начала следующего массива.
Вызываемая ClearCommError показывает, что число несчитанных байт в буфере после вызова ReadFile может быть от 0 до 7.
Какова может быть причина пропажи информации?
Dmitry_B вне форума Ответить с цитированием
Старый 31.08.2012, 18:53   #2
Dmitry_B
Пользователь
 
Регистрация: 29.03.2009
Сообщений: 83
По умолчанию

В каком случае ReadFile может формировать ошибку "buffer overrun" (по результату проверки ClearCommrror)?
Dmitry_B вне форума Ответить с цитированием
Старый 31.08.2012, 23:40   #3
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Ну, пока вы показываете MessageBox данные вы не читаете а байты то идут...
Посмотрите на SetupComm но это полумеры - нет гарантий когда будет закрыт MessageBox
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с чтением и записью в файл в Юникоде ymnuhj Microsoft Office Excel 8 14.05.2012 17:54
Проблемы с чтением из сокета файлов не являющихся текстовыми . read() Loki087 C/C++ Сетевое программирование 2 01.12.2011 01:20
C++\CLI проблемы с чтением русских букв с txt Eros Общие вопросы .NET 1 04.10.2010 02:03
Проблемы с записью/чтением типизированного файла khrenkov Общие вопросы Delphi 1 20.09.2010 15:09
Проблемы с чтением данных в Delphi cyberandom Помощь студентам 11 05.02.2010 19:52