| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Нескрываемая иконка в области уведомления? |
| Автор: DarkDragon 24.2.2009, 00:27 |
| Всем добрый день! Вопрос такой: нужно программным методом задать поведение иконки в области уведомления (системный трей). Бывает три вида поведения: 1 - скрывать, если не активный, 2 - всегда скрывать, 3 - всегда отображать. Так вот как это сделать? P. S. Метод с обновлением (чтобы иконка не скрывалась) меня не интересует |
| Автор: BorisVorontsov 24.2.2009, 11:30 |
| Думаю, никак. По крайней мере какого-нибудь сообщения или Shell-функции я не нашел. И вообще, что за наглость, посягать на установки пользователя? |
| Автор: DarkDragon 24.2.2009, 12:17 |
| Иногда пользователю надо помочь, а то не все пользователи умеют пользоваться настройками уведомлений Нет вы не правы. Microsoft далеко не все открывает в своей системе. К тому же как это их софт: Virtual PC сразу же ставить себя как "всегда отображать"? Еще как можно, просто как то хитро они это реализовали. Может сообщение какое-то нужно отправить TrayNotifyWnd? Или еще чего нибудь. Система же может изменять эти состояния, значить должен быть программный интерфейс. |
| Автор: BorisVorontsov 24.2.2009, 14:28 |
| Если эта возможность не документирована, то её, можно сказать, нет |
| Автор: DarkDragon 24.2.2009, 16:07 |
| Да мелкософт, вообще мало что гарантирует |
| Автор: DarkDragon 24.2.2009, 18:55 | ||
Запишите.
Возможно. |
| Автор: jonie 24.2.2009, 21:38 |
| The dwState and dwStateMask members ... undocumented 0x20000000 valid only in dwStateMask and only if dwMessage is NIM_ADD; set “always show” for icon if no state persists from registry взято отсюда: http://www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/notifyicondata.htm в кеше гугла найдется) http://209.85.129.132/search?q=cache:pWv5znsA-fMJ:www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/notifyicon.htm+http://www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/notifyicondata.htm&hl=ru&ct=clnk&cd=2&client=opera |
| Автор: DarkDragon 24.2.2009, 23:09 |
| jonie, спасибо! будем проверять |
| Автор: Dem_max 25.2.2009, 05:23 | ||||
Что значит недокументирована, очень даже документирована, просто надо читать MSDN
Пробовал я, только почемуто не работает. |
| Автор: jonie 25.2.2009, 09:13 |
| Dem_max ну никто не читал, пологаясь на автора ) |
| Автор: BorisVorontsov 4.3.2009, 11:06 | ||
Может, все-таки http://www.gotdotnet.ru/Forums/Windows/563019.aspx?
А ты 0x20000000 от 0x00000002 не отличаешь? |