Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.06;
Скачать: CL | DM;

Вниз

Поймать данные Com-порта в основном потоке   Найти похожие ветки 

 
HydraMarat   (2004-12-14 01:45) [0]

Здравствуйте, Уважаемые Мастера!

Соединяюсь с Com-портом через CreateFile и т.п. Написал прогу, которая ловит его данные во вторичном потоке (да и вообще там драйвер специально был написан, но это не важно). Так вот, а можно ли обойтись без вторичного потока? Можно ли дожидаться в основном? Может по таймеру состояние проверять?

Спасибо!


 
GanibalLector ©   (2004-12-14 02:26) [1]

Можно,но не нужно.
Почему?Ну,например,подвигай форму при считывании\записи в порт...тогда поймешь.Еще вариан,запусти фильм при тех же действиях.
З.Ы.Надеюсь желание отпало?


 
HydraMarat   (2004-12-14 02:28) [2]

Я же не спрашиваю целесообразно ли это. Я спрашиваю КАК?


 
Германн ©   (2004-12-14 02:45) [3]

2 HydraMarat   (14.12.04 02:28) [2]
>Я же не спрашиваю целесообразно ли это. Я спрашиваю КАК?

Используй асинхронный режим работы с портом.


 
HydraMarat   (2004-12-14 03:14) [4]

Германн, по подробнее если можно... Я про такой режим слышал, но не разу не использовал. Там через callback делается?


 
Германн ©   (2004-12-14 03:26) [5]

А причем тут "callback"?
Дело в том, что исторически микросхема Com-порта обеспечивает наличие признака, что байт принят! Исторически это могло вызвать соответствующее прерывание, или могло проверяться в цикле.
Windows запретил нам (пока еще не всегда, но уже почти всегда) доступ к этой микросхеме, но взамен предоставил свои способы реакции на вышеописанное.


 
HydraMarat   (2004-12-14 03:29) [6]

Германн

Да я уже в SDK почитал... Блин, стыдно! Ведь уже твердили "вначале в справку"... Эх. Под callback"ом я подразумевал регистрацию процедуры, которая вызовится при окончании приема данных, залез в справку - там через Event. ну оно не ново! Просто я думал, что можно проще... Впрочем с Event"ами я в последнее время много общаюсь.


 
Digitman ©   (2004-12-14 10:10) [7]


> HydraMarat   (14.12.04 03:29) [6]


> Да я уже в SDK почитал


плохо читал.
см. внимательно на overlapped-режим и ф-ции ReadFileEx, WriteFileEx


 
HydraMarat   (2004-12-14 19:51) [8]

УХ ТЫ!!! Значит callback все-таки можно сделать! А я этих Ex"ов как-то побаивался!!! Ну блин, теперь все тестить буду!!!

Спасибо всем огромное!



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

Текущий архив: 2005.02.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
14-1105993161
Piter
2005-01-17 23:19
2005.02.06
Расскажите подробно про авторизацию в ICQ


1-1106220683
salexn
2005-01-20 14:31
2005.02.06
RichEdit и поиск текста


1-1106300186
Garry_c
2005-01-21 12:36
2005.02.06
Есть форма F1 на которой есть CheсkBox1и F2 на которой есть


3-1104947532
Rule
2005-01-05 20:52
2005.02.06
Не могу восстановить БД Firebird 1.5 из gbk


4-1103014059
alex870
2004-12-14 11:47
2005.02.06
Ловушки