Por que as desinstalações normais não removem valores do registro?

19

Expandindo em Como faço para remover vestígios residuais de software desinstalado do registro? - toda vez que eu desinstalo um programa e depois o procuro via RegEdit ele ainda está lá!

Por que a maioria dos aplicativos do Windows tem a intenção de deixar pequenos vestígios de si mesmos no registro? É culpa do Windows ou dos desenvolvedores?

    
por Mark Boulder 24.05.2015 / 21:50

3 respostas

30

Porque é impossível.

O registro tem vários nós raiz, mas apenas dois interessantes: LocalMachine e CurrentUser . Normalmente, a configuração grava valores em LocalMachine e o programa em execução SOMENTE grava em CurrentUser (na verdade, a menos que a instalação mexe com as permissões, o programa em execução não pode gravar em LocalMachine.)

Embora manter as sobras no LocalMachine seja preguiça, como apontado pelas outras respostas, não é possível limpar a parte do Usuário.

Se um programa é instalado por máquina (o que a maioria é) e vários usuários o usam, o que o desinstalador deve fazer? Pode remover com segurança as configurações de usuário da conta atual, mas a conta atual pode não ser sua conta. (Isso acontece se você iniciar o desinstalador a partir de uma conta não admin e depois inserir as credenciais de uma conta de administrador - a configuração agora está sendo executada nessa conta, não na primeira).

E os outros usuários? Ele poderia tentar enumerar todos os usuários, mas suas chaves de registro podem não ser carregadas. (O Windows é preguiçoso e só carrega as coisas de que precisa.)

Mas você nem deveria tentar isso. Se você usar perfis móveis, por exemplo, para serviços de terminal e, em seguida, excluir todas as configurações durante a desinstalação, poderá realmente confundir e excluir itens que ainda estejam em uso.

Um servidor de terminal é basicamente uma máquina do Windows na qual vários usuários fazem login ao mesmo tempo e usam aplicativos.

Digamos que você tenha dois servidores de terminal executando um aplicativo. Você desinstalar o aplicativo no TS1, agora todas as configurações para todos os usuários se foram no TS2 porque você tem perfis de roaming. oops.

O mesmo se aplica aos arquivos nos diretórios por usuário.

Na configuração do programa das minhas empresas, eu apago o material por máquina, mas não toco no material por usuário, nem mesmo no usuário que está executando a configuração.

    
por 25.05.2015 / 01:27
18

Existem muitas razões para isso, no entanto, não é culpa da Microsoft ou dos sistemas operacionais Windows.

A seguir, há uma lista de alguns casos e motivos por trás da saída de entradas do Registro:

  • Programação incorreta - O desenvolvedor não gravou o desinstalador do aplicativo corretamente e as entradas do registro foram deixadas para trás. Além disso, o desinstalador pode não ter / usar as permissões adequadas para remover as entradas do Registro. Também pode ser que haja mais de um aplicativo que use essas chaves. Por exemplo, dois aplicativos do mesmo desenvolvedor que gravam nas mesmas chaves.

  • Deixado de propósito - Como um comentário foi mencionado, essas entradas poderiam ter sido deixadas de propósito. Alguns aplicativos têm um período de avaliação e, após esse período, você pode optar por remover o aplicativo. Se você optar por reinstalar o aplicativo posteriormente, essas chaves fornecerão informações sobre o aplicativo quando ele foi instalado. Além disso, alguns desenvolvedores podem optar por deixar essas chaves caso você escolha para reinstalar o aplicativo. Se o desenvolvedor usou as chaves do Registro para armazenar suas personalizações, elas podem deixá-las lá, portanto, quando você reinstalar todas as personalizações, persista. No grande esquema, as chaves de registro ocupam apenas alguns bytes.

Você deve remover as chaves? Depende. O registro do Windows é um lugar perigoso para se mexer. Você pode inadvertidamente quebrar seu sistema. Deixar as chaves estranhas não prejudicará o sistema. Algumas pessoas vão dizer limpeza / desfragmentação do registro irá acelerar o seu sistema, mas que tem sido provado falso repetidamente.

Se você realmente quer se livrar desses programas, existem alguns uninstaller ferramentas que podem remover todos os rastros de um programa. Esses programas assistirão ao instalador de outro programa e registrarão todas as ações executadas no sistema de arquivos e no registro e removerão completamente essas ações. Um problema com essas ferramentas é que é possível que elas podem remover coisas que você pode querer manter.

    
por 24.05.2015 / 22:38
0

Para se livrar do registro que sobrou, tente usar o desinstalador IOBIT. É de longe o melhor desinstalador disponível. Além disso, é gratuito ... eu o uso o tempo todo ... ele tem um poderoso recurso de desinstalação que vai direito de onde está a chave de registro à esquerda, clique na caixa de seleção quando solicitado e as chaves de registro são excluídas.   Iobit vem com outros programas, basta usar o desinstalador para se livrar deles

    
por 28.05.2015 / 22:39