![]() |
|
|
![]()
|
|
| Dreamer_0x01 |
|
|||
![]() Терминатор ![]() ![]() Профиль Группа: Участник Сообщений: 780 Регистрация: 14.4.2005 Где: Санкт-Петербург Репутация: 9 Всего: 12 |
Использую в программе отдельный поток, все засинхронизированно, поток "знает" структуру, в которой хранится HWND моего главного окна. Пишу с использованием API и MFC.
В потоке посылаю моему окну сообщения посредством вызова SendMesage(МОЙ HWND,МОЕ_СООБЩЕНИЕ, параметр 1, параметр 2). В моем окне,производном от CDialog, в карту собщений вписан обработчик вида ON_MESSAGE(МОЕ_СООБЩЕНИЕ, МОЯ_ФУНКЦИЯ). И функция-обработчик имеет вид LRESULT МОЯ_ФУНКЦИЯ(UINT wParam,LONG lParam) { /* какие-то действия */ return 0; } Так вот если посылать сообщение методом PostMessage, то все работает, правда, нет увренности в том, что мое сообщение будет обработано тогда, когда мне это надо. Поэтому я хочу использовать SendMessage, так как в документации читал, что оно "замораживает" поток до тех пор, пока не будет получено уведомление об обработке сообщения. Но в том-то и беда, что поток "замораживается", сообщение приходит окну, выполняются нужные действия, и все...Поток замирает. Короче, по-видимому надо как-то специально создать уведомление о получении моего сообщения, которое "разморозило" бы поток. Как??? -------------------- Нет ничего невозможного. Есть цели, и есть время и силы на их достижение. |
|||
|
||||
| SergeCpp |
|
|||
![]() ![]() ![]() Профиль Группа: Участник Сообщений: 955 Регистрация: 8.8.2005 Где: At Home Репутация: 5 Всего: 124 |
ReplyMessage
SendMessageTimeout SendNotifyMessage |
|||
|
||||
| Dreamer_0x01 |
|
|||
![]() Терминатор ![]() ![]() Профиль Группа: Участник Сообщений: 780 Регистрация: 14.4.2005 Где: Санкт-Петербург Репутация: 9 Всего: 12 |
SergeCpp
Спасибо!!! ReplyMessage помогло... -------------------- Нет ничего невозможного. Есть цели, и есть время и силы на их достижение. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |