Вниз
Скачать: 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.016 c
3-78831
Shaman
2003-11-04 15:11
2003.11.24
Какой UDF вычленить день из даты?


14-79121
Слэш2
2003-11-01 11:34
2003.11.24
Где в инете значки есть на кнопки?


1-79033
Тимохов
2003-11-13 13:04
2003.11.24
Как сделать аналог packed record только для классов.


14-79120
Fants
2003-11-01 13:57
2003.11.24
Проверка правописания


6-79085
Mr.Ice
2003-09-28 02:31
2003.11.24
webbrowser




   Наверх