Как установить значок группировки на панели задач

Когда мое приложение открывает слишком много окон, панель задач группирует их в одну кнопку. Каждое окно имеет свой собственный значок, но значок группировки является значком "неизвестного" типа по умолчанию.

Как установить значок группировки?


person Michael Damatov    schedule 20.10.2008    source источник


Ответы (3)


Этот комментарий Раймонда Чена указывает на то, что значок исходит из самого exe, я бы предложил использовать что-то вроде eXeScope, чтобы убедиться, что значок вашего приложения встраивается правильно, и, возможно, сравнить его с другими exes, которые отображают правильное поведение для выполнения дельта-отладки.

person Sijin    schedule 20.10.2008

Значок группы на панели задач можно установить в реестре для каждого приложения.

Для исследователя это будет здесь:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\explorer.exe]
"TaskbarGroupIcon"="C:\Windows\Explorer.exe,13"
person Tomalak    schedule 20.10.2008
comment
Похоже, что Explorer.exe - единственное приложение на моем компьютере, зарегистрированное в HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Applications. У других приложений (включая Outlook) есть правильный значок, но у них нет значения TaskbarGroupIcon ... - person Michael Damatov; 20.10.2008

Значок группы панели задач приложения можно установить двумя способами

  1. Через свойства проекта:

    Щелкните Проект в проводнике решений → щелкните правой кнопкой мыши → выберите свойства → выберите вкладку Приложение → перейдите к ресурсам и измените значок по умолчанию, выберите новый значок и сохраните и создайте.

  2. Через реестр (динамический):

    Вы должны создать ключ TaskbarGroupIcon, а значение - «файл значка с путем» в разделе «HKEY_CURRENT_USER \ SOFTWARE \ Classes \ Applications \‹> ». Если указанные выше ключи отсутствуют, вам необходимо создать

    RegistryKey RegKey = Registry.CurrentUser.OpenSubKey(
       "Software\\Classes\\Applications\temp.exe",true); 
    RegKey.SetValue("TaskbarGroupIcon", "c:\temp.ico", RegistryValueKind.String);
    
person Ajay    schedule 16.07.2010