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

изменить порядок обработки событий.   Найти похожие ветки 

 
Зина   (2003-01-16 13:39) [0]

Мастера, помогите пожалуйста !
Я работаю с "железом" (СОМ-порт, к примеру).
Посылаю данные, жду ответа.
Пока жду, кручусь в цикле
Application.ProcessMessages;

Но я не хочу, чтобы обрабатывались события от мыши и клавиатуры.
Только системные, таймер и.т.п.
Но эти нажатия на кнопки не должны совсем пропасть, а должны остаться в очереди до лучших времен.
Когда завершится эта процедура.

Такое возможно ?


 
Digitman ©   (2003-01-16 13:45) [1]

возможно

приведи весь фрагмент кода отправки-ожидания-приема, че-нть посоветуем дельное


 
MBo ©   (2003-01-16 13:45) [2]

почему бы не работать с портом в отдельном потоке, тогда в главном можно вытворять что угодно


 
Digitman ©   (2003-01-16 13:48) [3]


> MBo


Если обработка вх.данных несложная, imho, нет резона выносить ее в доп.код.поток.... а вот сложная иль несложная - это автору определяться нужно


 
jack128 ©   (2003-01-17 09:15) [4]

Я так понимаю полюбому надо выносить в отдельный поток
События от порта ждутся с помощью WaitCommEvent, SetCommMask


 
Digitman ©   (2003-01-17 09:40) [5]


> События от порта ждутся с помощью WaitCommEvent


Совершенно необязательно. Ожидание коммуникационных событий вполне можно совместить с ожиданием любых других объектов синхронизации и Win32-сообщений, циклически вызывая в осн.код.потоке в MsgWaitForMultilpleObjects(). До тех пор, пока не сработало коммуник.событие, можно получив сообщения от мыши/клавы оставлять их в очереди и не обрабатывать по TranslateMessage()/DispatchMessage()



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

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



Память: 0.46 MB
Время: 0.009 c
3-39161
denis24
2003-02-20 13:02
2003.03.13
движение курсора в DBGRID


1-39409
Вопрос
2003-03-03 11:11
2003.03.13
Excel


1-39396
jack128
2003-03-01 21:04
2003.03.13
Free в конструкторе


6-39459
ofp
2003-01-21 03:02
2003.03.13
Как менять MAC адрес программным путем ?!


1-39298
DerMeister
2003-03-03 23:26
2003.03.13
Как узнать что комп собираеться перезагрузиться?




   Наверх