O que “regsvr32 / i shell32.dll” faz?

3

O que exatamente o regsvr32 /i shell32.dll faz? A definição de "Esta ferramenta de linha de comando registra os arquivos .dll como componentes de comando no registro." não é exatamente informativa.

Ele aparece em toda a rede como uma pílula mágica para resolver todos os tipos de problemas, desde associações de arquivos a ícones da área de trabalho, até a visualização da câmera para fazer café (ok, talvez não café). Para que serve e como deve ou não deve ser usado?

    
por matt wilkie 19.04.2012 / 20:45

2 respostas

2

Alguns arquivos (dll) no Windows precisam ser registrados para serem usados por outros aplicativos e por partes do próprio sistema operacional. Shell32.dll é um arquivo de sistema crítico que é usado em todos os lugares pelo próprio Windows e por outros programas. Quando você instala o Windows, ele registra todos os arquivos necessários, e esse registro é basicamente gravar algumas coisas no registro (embora possa fazer mais do que isso).

Às vezes, por vários motivos (malware, etc), essas configurações do registro são excluídas, corrompidas, substituídas, etc. Isso pode levar a vários problemas, como os que você está descrevendo (associações de arquivos, ícones da área de trabalho, etc.). Quando isso acontece, uma das coisas que você pode tentar é reparar o registro de certas DLLs. Isso é feito registrando novamente as DLLs, para que essas configurações do registro possam ser restauradas, reescritas.

Se quisermos comparar, este é o equivalente da DLL para reinstalar um aplicativo. Por exemplo, se o MS Office começar a funcionar mal e não funcionar corretamente, tente reinstalá-lo. Se algumas coisas der errado no Windows e estiver relacionado a shell32.dll, você pode tentar registrar novamente o shell32.dll.

regsvr32.exe é uma ferramenta incluída no Windows que pode registrar e cancelar o registro de arquivos DLL. Para usá-lo, você passa o nome da DLL que deseja registrar / cancela o registro e alguns sinalizadores que especificam o que você deseja fazer. regsvr32 /i shell32.dll está praticamente dizendo "Por favor, registre o arquivo shell32.dll para mim". Isso chama internamente a função DllInstall das DLLs e a DLL é registrada novamente.

Aqui estão todas as coisas que você pode fazer com o regsvr32: Regsvr32

Além disso, aqui está um artigo que explica como corrigir vários problemas no WinXP, registrando novamente algumas DLLs: Windows Dicas: Corrigir falhas no Windows registrando novamente suas DLLs

    
por 19.04.2012 / 22:31
1

Shell32.dll é responsável por manipular chamadas de API do shell, que afetam uma grande quantidade de itens com os quais você interage no Windows (por exemplo, abrir arquivos).

Ocasionalmente, algumas das coisas que o Shell32 normalmente é responsável por manipular podem ser redesignadas para outros aplicativos, ou corrompidas, causando qualquer número de problemas.

A parte /i desse comando chama a parte DLLInstall de Shell32.dll , que oferece a oportunidade de executar quaisquer tarefas de (re) instalação necessárias, como adicionar / corrigir entradas de registro.

    
por 19.04.2012 / 21:01