| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > SendMessage |
| Автор: gonzales 7.9.2006, 12:34 | ||||
| Вопрос след. характера, как послать сообщение процессу, который меняет свое название. например Winamp, сразу после загрузки его процесс ищется так
и нет никаких проблем послать ему что-то типа
но, сразу после включения композиции процесс винампа определяется как '01 - xxxx - winamp' и каким образом мне отловить его хандл??? |
| Автор: Alexeis 7.9.2006, 12:36 |
| gonzales, лучше использовать как раз первый а не второй параметр findWindow, поскольку это имя класса окна - параметр который не меняется со временем, а второй как раз можно установать в nil. |
| Автор: Yanis 7.9.2006, 12:44 |
| Вся проблема в том, что процессы не получают сообщений. Добавлено @ 12:46 Класс окна Winamp - "Winamp v1.x" |
| Автор: gonzales 7.9.2006, 12:51 |
спасибо, я встечал в нете такую фразу, но думал, что просто инфа допотопная а кто получает сообщения (это так, для общего развития), приложения? |
| Автор: Snowy 7.9.2006, 12:56 |
| Да нет. Процессы тоже получают сообщения. Не оконные, но получают (PostThreadMessage как раз для этого и предназначен). Но винамп ловит окном. Искать его нужно по крассу окна, а не по заголовку. Но это уже написали... |
| Автор: Yanis 7.9.2006, 13:00 |
| Ну так процесс и поток суть разные понятия. |
| Автор: gonzales 7.9.2006, 13:20 |
| ну и напоследок вдогонку уважаемым экспертам вопрос, чем отличаются sendmessage и postmessage? |
| Автор: dumb 7.9.2006, 13:24 | ||
|
| Автор: Snowy 7.9.2006, 13:46 |
| Send отправляет и ждёт ответа. Post ответа не ждёт. |