
Se você clicar com o botão direito ou pressionar Alt+Enterum atalho, o Windows normalmente exibe o menu de contexto ouPropriedadescaixa de diálogo imediatamente, mesmo que o atalho esteja quebrado e aponte para um arquivo ou diretório que não existe mais.
Já vi isso levar algum tempo para atalhos quebrados para .exe
arquivos onde o Windows gasta vários segundos (neste caso 15), provavelmente tentando resolver o atalho, antes de finalmente mostrar o menu de contexto ouPropriedadesdiálogo. Mesmo a exclusão dos arquivos aguarda 15 segundos antes de mostrar o prompt de exclusão. Copiá-los ou movê-los não parece desencadear o atraso.
Achei que talvez pudesse ser uma configuração relacionada à rede, mas parece se aplicar a todos os atalhos (quebrados), independentemente de onde eles apontem. Procurei no TweakUI e não encontrei nada. Procurei no registro 15.000 (e 0x3A98) e não encontrei nenhum que se aplicasse tão bem quanto 15 (e 0x0f), que teve muitos resultados, mas nenhum que fosse responsável por isso.
Existe uma configuração que determina o tempo limite para resolução de atalhos?
Responder1
Acontece que, neste caso, era uma extensão de shell.
Primeiro, observei que quando o atalho quebrado era clicado com o botão direito, o Explorer tentava abrir o arquivo executável para o qual apontava uma vez por segundo durante 15 segundos antes de desistir.
Em seguida, observei todas as entradas do registro que foram acessadas quando o atalho foi clicado com o botão direito e passei por cada um de HKCR\.lnk
, HKCR\lnkfile
, HKCR\.exe
e HKCR\exefile
, verificando cada uma delas em busca de algo incomum.
- Abri o editor de registro e desabilitei todas as
exefile
extensões (anexando um '#' ao início de cada CLSID) - Descobri que clicar com o botão direito foi imediato. Maravilhoso!
- Em seguida, reativei cada extensão removendo o '#', clicando com o botão direito do mouse no atalho quebrado todas as vezes
Voilá! A extensão ofensiva {F0407C3D-349C-42B9-B83E-821E31623DF9}
corresponde a CmdLineExt, que parece bastante inocente (já existe uma extensão que abre um prompt de linha de comando em qualquer pasta), mas não é. Esta extensão insidiosa e claramente cheia de bugs é na verdadeMenu de contexto SecuROM para ExplorerporSony DADC Áustria AG, e parece queesta extensãoénada além de problemas.
Não tenho certeza de como ou quando ele foi instalado (provavelmente algum software), mas a Sony é conhecida por seu'rootkits'.
De qualquer forma, pelo que sei, o Windows não demora para resolver atalhos; ele detecta imediatamente atalhos quebrados e come o erro (usa padrões).