Сейчас на форуме: hgdagon, asfa, bartolomeo (+4 невидимых) |
![]() |
eXeL@B —› Программирование —› Сообщения. Проблема возврата Result в DefaultHandler. |
Посл.ответ | Сообщение |
|
Создано: 23 апреля 2007 12:21 · Поправил: ToBad · Личное сообщение · #1 Пишу обработчик сообщений для обмена между двумя моими программками, но столкнулся с проблемой возврата значения. По идее это можно делать и через result и через указатель на адрес например в lparam. MyProc – обрабатывается, но sendmessage упорно возвращает 1. Подскажите пожалуйста в чём моя ошибка. type
![]() |
|
Создано: 23 апреля 2007 13:05 · Личное сообщение · #2 |
|
Создано: 23 апреля 2007 13:18 · Личное сообщение · #3 Player пишет: до него не лобирается если я правильно понял, то дело не в этом, т.к.: ToBad пишет: MyProc – обрабатывается помоему надо не DefaultHandler объявлять.. Не помню, могу ошибаться. Может еще значение mymsg (<=400) не правильное. Используй WM_USER+1 или наподобие. ----- radio uno in ibisa ... ![]() |
|
Создано: 23 апреля 2007 13:19 · Личное сообщение · #4 Player пишет: Проблема в HWND_BROADCAST, если поменять на Form1.WindowHandle, то всё нормально. Просто похоже окно формы в Delphi не top-level окно и поэтому BROADCAST до него не лобирается. BROADCAST до него добирается, в моём обработчике срабатывает процедура MyProc. А вот результат упорно возвращается 1. ![]() |
|
Создано: 23 апреля 2007 19:08 · Личное сообщение · #5 Player пишет: Проблема в HWND_BROADCAST, если поменять на Form1.WindowHandle, то всё нормально. Да, так работает. Спасибо !!! А где можно прочитать чем это объясняется ? Icelot пишет: Используй WM_USER+1 Это с HWND_BROADCAST не катит. MyMsg назначаю с помощью RegisterWindowMessage. Жаль конечно, что не получается применить HWND_BROADCAST. Не хотел использовать FindWindow. ![]() |
![]() |
eXeL@B —› Программирование —› Сообщения. Проблема возврата Result в DefaultHandler. |
Эта тема закрыта. Ответы больше не принимаются. |