Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы 60-79.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
28.11 Кб
Скачать

79. Поставленные в очередь (синхронные) сообщения

PostMessage или PostThreadMessage.

Внеочередные (асинхронные) сообщения отправляются немедленно оконной процедуре предназначения, в обход системной очереди сообщений и очереди сообщений потока. Система обычно отправляет внеочередные (асинхронные) сообщения, чтобы уведомить окно о событиях, которые воздействуют на него. Например, когда пользователь активизирует новое окно прикладной программы, система отправляет окну ряд сообщений, включая WM_ACTIVATE, WM_SETFOCUS и WM_SETCURSOR. Эти сообщения уведомляют окно, что оно было активизировано, что ввод информации с клавиатуры направлен в окно, и что курсор мыши был перемещен в пределы границ окна. Внеочередные (асинхронные) сообщения могут  быть также результатом того, что прикладная программа вызывает некоторые функции системы. Например, система отправляет сообщение WM_WINDOWPOSCHANGED после того, как прикладная программа использует для перемещения окна функцию SetWindowPos.

Вот некоторые функции, которые отправляют не поставленные в очередь (асинхронные) сообщения - BroadcastSystemMessage, BroadcastSystemMessageEx, SendMessage, SendMessageTimeout и SendNotifyMessage.