Главная страница
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.066 c
3-1105305393
chir
2005-01-10 00:16
2005.02.06
String и TDateTime


9-1098162851
RRAIN
2004-10-19 09:14
2005.02.06
Совместное написание игр


14-1105778142
Шишкин Илья
2005-01-15 11:35
2005.02.06
delphibase.endimus.ru


3-1105304363
Windows_3000
2005-01-09 23:59
2005.02.06
работа с DBF


9-1099279970
VolanD666
2004-11-01 06:32
2005.02.06
Описание *.mdl