mrusklon
@mrusklon
Не получается? Яростно гугли!

Как сменить иконку в трее у программы?

К примеру есть пунто свитчер , хочу его иконку в трее изменить на .. ну скажем зеленый квадратик простой , это возможно или нужно exe распаковывать что в данном случае невозможно?
В реестре я искал не нашел нечего подходящего, может плохо искал...
  • Вопрос задан
  • 4075 просмотров
Пригласить эксперта
Ответы на вопрос 5
Zoominger
@Zoominger
System Integrator
Есть редакторы ресурсов программ, ничего дизассемблировать и г-нокодить не надо.
Ответ написан
dollar
@dollar
Делай добро и бросай его в воду.
Зависит от программы, иконку которой вы хотите сменить, и ее архитектуры. К примеру, тот же пунто свитчер меняет иконку, в зависимости от настроек и ситуации. И я не смотрел, как именно он это делает, не обязательно берет иконку из файла или ресурсов в exe, он может и на лету ее "рисовать".

В теории можно всё. И здесь два основных пути. Либо как-то дизассемблируем программу или достаем ее исходники и меняем ее саму. Либо программу не трогаем, а сверху навешиваем костыль в виде другой программы, которая будет как-то перехватывать первую или даже тупо спамить зелеными иконками (самое простое решение), т.е. даже если иконка сменится, то она сразу же будет снова заменена на зеленый квадрат, но это надо, чтобы своя самописная программа сидела в фоне и контролировала первую.

То есть в любом случае, скорее всего, нужно будет программное решение, а не поменять значение в реестре. Просто значение поменять возможно, только если в архитектуре самой программы заложена такая настройка, но она довольно бессмысленная, так что вряд ли она есть.
Ответ написан
Комментировать
@AlexSku
не буду отвечать из-за модератора
Очень часто маленькие изображения как ресурсы встраиваются в exe. Сами же иконки обрабатываются программой.
https://docs.microsoft.com/en-us/windows/win32/she...
Ответ написан
Комментировать
tsklab
@tsklab
Здесь отвечаю на вопросы.
Есть небесплатная программа: PS Tray Factory.
Ответ написан
@domenix
Александр Скуснов: В конечном итоге всё сводиться к вызову и обслуживанию старой доброй API NotifyIcon.
Ну или... как вариант установки локального / глобального HOOKS для данной API.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы