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

Com port & WaitCommEvent   Найти похожие ветки 

 
Andrew Volkov   (2003-09-15 20:55) [0]

Поймал непонятный глюк.
Создается отдельный поток для чтения из ком порта
Для прослушивания события используется WaitCommEvent

WaitCommEvent(CommHandle,TransMask,nil);

Раньше все было нормально - прога доходила до этого места и спокойна ждала события - а теперь (ничего не менял) она пролетает это место, а так как все это в цикле

while true do

она все время крутиться и мочит процессор. Но она же должна ждать - на Ком ничего не приходит - к нему ничего не подключено. В чем может быть трабла.Кто сталкивался, подскажите


 
Evgeny V ©   (2003-09-16 05:53) [1]

Как открыт порт на чтение? Есть ли флаг оверлаппед FILE_FLAG_OVERLAPPED, если есть, а у тебя в WaitCommEvent(CommHandle,TransMask,nil); а у тебя lpOverlapped=nil, то результат WaitCommEvent может быть не корректным (HELP WinSDK по WaitCommEvent).И еще момент, если ты делаешь SetCommMask в момент работы WaitCommEvent, тоже вывалится. И код было бы неплохо, как открыт порт, какие маски устанавливаются и когда.


 
Andrew Volkov   (2003-09-16 22:19) [2]

Сенкс - разобрался. Ошибки не описал - поэтому сразу не заметил в чем трабла. На самом деле один из принтеров был настроен на Сом1 - поэтому при загрузке он его захватывал - а прога не могла достучаться до него и спокойно молчала - запуская при этом в потоке чтение порта. Вот оно там и бубенило...



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

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



Память: 0.45 MB
Время: 0.028 c
3-78795
Disruptor
2003-11-05 12:33
2003.11.24
Как прервать цикл FOR SELECT


1-78919
Alex2
2003-11-12 11:44
2003.11.24
Не могу отыскать координаты


1-78993
UDS
2003-11-13 20:04
2003.11.24
Взаимосвязь между двумя формами (процедуры)


11-78874
Юрий
2003-03-07 16:57
2003.11.24
WebBrowser в КОЛ приложении


4-79215
Sfagnum
2003-09-26 13:50
2003.11.24
RichEdit 2.0




   Наверх