it-swarm.dev

Alterar o ícone da barra de tarefas fixada (windows 7)

Não quero personalizar o ícone exibido na barra de tarefas do Windows 7. Quando meu aplicativo está em execução, posso fazê-lo alterando o ícone da janela principal, mas quando o aplicativo é fixado, o ícone do exe é exibido.

Como posso definir o ícone da barra de tarefas do meu aplicativo para um ícone diferente daquele incorporado no exe?

Não tentei, este solução pode funcionar, mas parece sujo.


Editar:

Nosso aplicativo é compilado uma vez, mas dependendo do arquivo de configuração, os recursos são ativados ou não, portanto, é um produto ou outro. Nós não queremos compilar um exe para cada produto.

A solução acima pode não funcionar como muitas instâncias do meu aplicativo podem ser instaladas em diferentes pathes (assim você acaba com o mesmo nome de arquivo exe, mas ícones diferentes!), É esta chave de registro mal projetada ou estou faltando alguma coisa?

26
François

EDITAs informações abaixo são um pouco obsoletas; todos os novos bits do Windows 7 estão agora disponíveis como API gerenciada, disponíveis aqui: http://code.msdn.Microsoft.com/WindowsAPICodePack

Existe uma série de artigos na nova API da barra de tarefas pelo guru de depuração Sasha Goldshtein . Você deve dar uma olhada nos ícones de sobreposição e API de barras de progresso .

Você pode baixar o código de amostra de Recursos de Desenvolvedor da Barra de Tarefas do Windows 7 no Microsoft Code. O que você está procurando é a amostra IMClient:

A amostra IMClient demonstra como Barras de progresso da barra de tarefas e barras de tarefas Podem acender um botão da barra de tarefas do aplicativo Em vez de Confiar em um diálogo adicional ou em um ícone na área de notificação do sistema (bandeja).

alt textalt textalt text

Eu acredito que isso deve ajudá-lo a alcançar o que você quer.

23
Igal Tabachnik

Quando você fixa um aplicativo ao TaskBar, ele simplesmente cria um atalho no seguinte diretório:

C:\Users\<User Name>\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar

Você deve ser capaz de identificar onde o atalho está (ou seja, obter KnownFolders e trabalhar a partir daí. UserAppData deve ser o único) e, em seguida, usando P/Invoke (IShellLink), você pode alterar o ícone que o atalho está configurado para usar. A máquina pode precisar de uma reinicialização para que isso tenha efeito, mas deve funcionar.

Se você mantiver pressionada a tecla Shift enquanto clica com o botão direito do mouse no aplicativo fixado e selecione Propriedades, poderá ver o botão Alterar ícone do atalho. Isso é basicamente o que você precisa para emular com o código.

Todas essas coisas podem ser feitas com o código, mas se você acha que elas são melhores do que a configuração do registro, você decide.

16
David Wengier

Tanto quanto eu posso dizer, por algum motivo você não pode mudar o ícone de um programa que já está fixado na barra de tarefas. Para fazê-lo, basta desafixar o programa, localizá-lo no menu Iniciar, clique com o botão direito - propriedades - alterar ícone. depois volte a fixá-lo na barra de tarefas e ele terá o novo ícone!

1
rob harvey

Eu não sei se estou entendendo o seu problema, mas ..

Se você criar um aplicativo e colocar a propriedade icon da janela principal, esse ícone também aparecerá na barra de tarefas. Mas, se você fixá-lo na barra de tarefas, esse ícone desaparece. Estou certo? Se assim for, vá para as propriedades do projeto e na aba do aplicativo, coloque o ícone que você deseja para o exe. Agora, você verá esse ícone na barra de tarefas quando fixado.

Eu uso o mesmo ícone para as duas coisas: P

1
Jesus Rodriguez

Você pode fazer isso usando a biblioteca chamada "Windows 7 Bridge", que é baseada no "Windows Vista Bridge". 

Esses são wrappers gerenciados em torno de todas as funções nativas do Vista e do Windows 7. 

Mais informações podem ser encontradas aqui

1
rein

Eu não posso testar isso agora, infelizmente, mas talvez apenas a criação de um bom e velho atalho possa resolver o problema? Crie um atalho para o aplicativo, altere o ícone e fixe o atalho em vez do próprio aplicativo?

Irá verificar quando eu posso conseguir o acesso ao meu computador com Windows 7 ...

0
Jon Grant

Dê uma olhada em este blog . Ele faz uma série de posts sobre programação da barra de tarefas do Windows 7, então talvez isso aponte você para a direção certa.

0
Tom van Enckevort

Clique com o botão direito do mouse no ícone fixado, no pop-up você verá o título do programa, clique com o botão direito novamente e vá para propriedades. Lá você pode alterar o ícone clicando no botão "Ícone de mudança". Para mim, precisou de uma reinicialização para concluir as alterações.

0
Ephraim