Re[2]: Мониторинг/Управление PopUpMenu другого приложения
От: Mielofon  
Дата: 09.12.05 15:57
Оценка:
Здравствуйте, Leonid Troyanovsky, Вы писали:

LT>Здравствуйте, Mielofon, Вы писали:


M>>Вот висит у меня приложение. Причем висит оно только иконкой в трее.


LT> С повисшими приложениями работать весьма трудно.

LT> Хотя, если только иконкой, можно попробывать.
Висит в смысле в трее, а не в смысле не работает

M>>1. получить информацию о иконке в трее (что на ней сейчас изображено — там иконка меняется и мне просто знать какое состояние ее сейчас — только что бы не распознавать образ )


LT> Для того чтобы знать о изменениях, происходящих с иконками нужно установить хук

LT> на Explorer и отлавливать WM_COPYDATA в окно ShellTray_Wnd.
LT> При Shell_NotifyIcon окну ShellTray_Wnd будет SendMessage(.., WM_COPYDATA, ..)
LT> c dwID = $34753423

LT>В качестве структуры данных можно испытать изложенное в


LT>http://groups.google.com/group/fido7.su.win32.prog/msg/d966e07f9ad4c70e

С этим понятно..


LT> Все остальное (нажатия, считывание пунктов меню и др.) делается

LT> собс-ручно и записывается на бумажке, бо состояний у оной иконки -
LT> конечное множество, а интересны лишь значение WM_COMMAND LOWORD(wParam)
LT> — WinSight32, Spy.
как раз WM_COMMAND-ы мы то уже узнали (Spy++ помог), но вот один из пунктов PopUpMenu меняет свой Caption динамически в процессе работы и в зависимости от состояния прилоения и соответственно то что он делает.
Как добраться до Caption MenuItem-ов у PopUpMenu?

PS Вывести PopUpMenu послав сообщение тоже что и ShellTray_Wnd посылает у нас получилось..
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.