![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Для paul_shmakov
Лёха © (2002-04-08 01:31:00)>>т.о. Shell_NotifyIconW просто ищет окно с классом "Shell_TrayWnd" и посылает в него
сообщение WM_COPYDATA. в качестве данных выступает простая структура TNIDMessage.
возвращаясь к топику: если создать свое окно с классом "Shell_TrayWnd" и обрабатывать
входящие сообщения WM_COPYDATA, то можно написать полный аналог system tray!
и, заметьте, очень просто.
Это написали вы. А не могли бы вы сказать, как из WM_COPYDATA вытащить хендл иконки??? Очень прошу!
Заранее огромное спасибо!
Лёха (2002-04-08 14:05:00) [1]Огро-о-омное спасибо!!!
paul_shmakov (2002-04-08 11:57:00) [2]здесь не приняты прямые обращения к участникам форума, прямые только по email :)
а насчет вопроса, так посмотрите еще раз на тему
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1015937269&n=5
там в процессе анализа обнаружилось, что в WM_COPYDATA в качестве параметра передается структура
TNIDMessage = packed record
Magic: DWord; // всегда равно $34753423
Message: DWord; // NIM_ADD, NIM_MODIFY или NIM_DELETE
NID: TNotifyIconDataW;
end;
последнее поле - это как раз обычная и знакомая структура TNotifyIconData. ее поле hIcon - как раз то, что вам нужно.