Posso impedir a alteração dos ícones de sobreposição?

16

fundo

Vários programas modificam os ícones no explorere para indicar um estado ("sincronizado" Sobreposição de sincronização do TortoiseCVSetc.)

É um fato conhecido que o Windows (win7, win8, win10?) Pode lidar apenas com uma quantidade limitada desses ícones (~ 15) e existem várias perguntas relacionadas (fe aqui ).

Esses ícones de sobreposição são registrados no registro na filial:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

Localização dos ícones de sobreposição de shell no registro

Somente as duas primeiras entradas (15?) São realmente usadas, as outras são ignoradas. Como resultado, ter vários programas instalando seus próprios ícones de sobreposição pode corromper o comportamento dos programas já instalados.

Para corrigir isso, geralmente é necessário entrar no registro e excluir (ou renomear) entradas indesejadas até que as desejadas estejam no topo.

Problema

Recentemente, notei um comportamento cada vez mais "agressivo" de vários programas que lutam por essas posições de topo. Isso geralmente é feito com nomes de chaves que começam com caracteres de espaço em branco para impor a classificação superior. Dropbox , GoogleDrive , SkyDrive e OneDrive estão, por exemplo, fazendo isso. Alguns, como o GoogleDrive , usam até três espaços em branco hoje em dia, mas outros programas estão ficando iguais ...

O que é pior, alguns programas até reparam essa configuração automaticamente durante qualquer 'atualização' automatizada (ou mesmo verificação de atualização ou início do programa?). Portanto, todos os ajustes manuais são regularmente desfeitos. Percebi isso pelo menos no GoogleDrive , Dropbox e OneDrive

Questão

Existe uma maneira de 'proteger' o registro de tais alterações automatizadas?

Editar (resposta)

Alexey Ivanov deu uma boa sugestão no comentário abaixo e até agora "revogar privilégios de registro" suprimiu o problema para mim.

BmyGuest
fonte
2
Fiz uma alteração bastante grande na sua postagem - o problema é que, se você solicitar o arquivo em lotes, estará fora do tópico, pois não somos um serviço de gravação de script. Além disso, o lote pode ou não ser o melhor caminho. Mantendo isso simples, permitirá (espero) permitir diferentes tipos de respostas. Sinta-se à vontade para reverter minhas alterações, se elas forem muito grandes, mas aceite-as.
19416 Dave
@ Dave: OK, não sabia que arquivos em lote estão fora do limite neste site, pois já vi muitos deles em respostas. Eu apenas pensei que um arquivo em lote poderia ser a "única" solução aqui, mas, na verdade, estou atrás de uma solução de qualquer maneira e sua edição está bem comigo. Se você acha que isso aumenta a aceitação do post, então muito obrigado.
BmyGuest
Ah, pedir ajuda com seu arquivo em lotes atual é bom (e você precisará compartilhar o código). Mas pedir-nos para escrever um para você não é :)
Dave
1
Eu realmente adoraria uma resposta para isso. O Dropbox é realmente irritante, sempre substituindo os ícones do TortoiseSVN a cada atualização. Eu criei um script que corrige isso e reinicia o Windows Explorer, mas encontrei essa pergunta ao tentar encontrar uma maneira de evitar a necessidade de fazer isso ...
Nuno
2
A primeira coisa que me vem à mente é revogar privilégios de gravação dessa chave do Registro. Em seguida, nenhum programa poderá modificar as entradas do registro. Para permitir que um aplicativo registre seu conjunto de ícones de sobreposição, você precisará editar as permissões na chave novamente para adicionar privilégios de gravação.
Alexey Ivanov

Respostas:

13

O que fiz, já que o Dropbox está realmente se tornando irritante, é que criei um arquivo ".reg" que remove todas as entradas do Dropbox:

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt01]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt02]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt03]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt04]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt05]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt06]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt07]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt08]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt09]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt10]

Em seguida, executo um arquivo ".cmd" que o executa e reinicia o Windows Explorer:

regedit -s FixDropboxTortoiseSVNConflict.reg

taskkill /f /im explorer.exe

start explorer.exe

E o TortoiseSVN mostra sobreposições de ícones novamente.

Não é a maneira mais bonita de fazer as coisas e pode exigir a alteração das chaves do Registro acima quando o Dropbox as alterar no futuro novamente, mas remove alguns trabalhos manuais de ir para o Registro e renomeá-los / excluí-los, um por um :)

Nuno
fonte
Ótimo, exatamente o que eu estava procurando, obrigado! O uso start explorer.exeno arquivo cmd torna o explorador um processo em segundo plano, para que a janela do shell não permaneça aberta após a conclusão.
Shlublu
1
Se você aplicar o overlays.regarquivo em seu .cmdcom regedit -s overlays.regvocê pode corrigir tudo em uma única ação. Além disso, você pode simplesmente excluir a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifierschave inteira e adicionar novamente as necessárias, caso contrário o OneDrive e o Dropbox continuarão adicionando espaços às chaves.
21417 Dave