Вниз
Скачать: CL | DM;

Очистить буфер порта   Найти похожие ветки 

← →
Shamansky   (2005-02-13 21:57) [0]

Доброго времени суток, возника проблема: работаю с компортом, на него приходят данные, но их надо считывать только после конкретного символа. Специально создаю поток, который слушает порт на поступление DCB.EvtChar="U", на его поступление реагирует нормально, но проблема в следующем: с порта считывается все, что приходило до этого символа, как очистить буфер по поступлению символа не могу разобраться, очистка буфера вместе с символом "U" не критично, необходимо считать следующие 18 символов.


← →
tesseract   (2005-02-14 11:12) [1]

смотри PURGE_COM()


← →
Marser ©   (2005-02-14 12:15) [2]

purgecomm(handle,PURGE_RXCLEAR)

Прибытие символа это либо событие deChar waitcommevent, либо в ClearCommError одно из полей выходной струтуры типа COMSTAT

>tesseract
Перед такими советами желательно сверяться с хелпом


← →
ECM ©   (2005-02-14 15:15) [3]

При определенных настройках порта - есть риск при PurgeComm потерять не только то, что было до спец. символа - но и после...
ИМХО: Лучше вычитывать все во внутренний буфер - а затем
последовательно разгребать...


← →
Shamansky   (2005-02-14 16:11) [4]

Так я это уже нашел и ставлю в качестве символа-события - последний символ посылки, а потом уже чищу буфер.
Слушайте в процессе возникла еще одна проблема: чтение идет в отдельном потоке и  при попытке закрыть порт и потом освободить поток система очень сильно задумывается, причем приложение не значится как зависшее, а процессор занят на все 100%. Порт открываю в асинхронном режиме.


← →
Marser ©   (2005-02-15 11:39) [5]


> Shamansky   (14.02.05 16:11) [4]

Сначала лучше убить поток, а затем уж закрывать порт.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
1-1110625305
iffi
2005-03-12 14:01
2005.03.27
Окно поверх всех других!


14-1110458494
Layner
2005-03-10 15:41
2005.03.27
Subscribe, кто с ним дружит?


3-1109700634
mefisto
2005-03-01 21:10
2005.03.27
Подключение файлов .mdf и .ldf сервера MSSQL7 к MSSQL2000


14-1109928883
DelphiN!
2005-03-04 12:34
2005.03.27
Проблемма после переустановки версии компонентов


1-1110810294
Manfred8
2005-03-14 17:24
2005.03.27
Какую кодировку использует Дельфя для хранения данных в dfm?




   Наверх