¿Por qué las desinstalaciones normales no eliminan valores del registro?

20

Ampliación de ¿Cómo elimino los rastros residuales de software desinstalado del registro? - Cada vez que desinstalo un programa y luego lo busco a través de RegEdit, ¡sigue ahí!

¿Por qué la mayoría de las aplicaciones de Windows están tan decididas a dejar pequeños rastros de sí mismas en el registro? ¿Es culpa de Windows o de los desarrolladores?

Mark Boulder
fuente
3
Un gran grupo de ese tipo de programas pertenecen a programas de prueba que tienen un límite de tiempo y después de eso hay que comprarlos. si no dejaron ningún rastro en Windows, después de que el período de prueba haya finalizado, simplemente puede desinstalar y reinstalar el software y restablecer el período de prueba. Realmente depende de los desarrolladores decidir cómo deberían actuar sus programas en la desinstalación. Hay programas y software de controlador que se desinstalan por completo y eliminan todo lo que agregan en la instalación.
Conspiria

Respuestas:

30

Porque es imposible

El registro tiene múltiples nodos raíz, pero sólo dos interesantes: LocalMachine y CurrentUser . Normalmente, la configuración escribe valores en LocalMachine, y el programa en ejecución SOLO escribe en CurrentUser (en realidad, a menos que la configuración interfiera con los permisos, el programa en ejecución no puede escribir en LocalMachine).

Si bien mantener las sobras en LocalMachine es pereza, como se señala en las otras respuestas, no es posible limpiar la parte del Usuario.

Si se instala un programa por máquina (cuáles son la mayoría) y varios usuarios lo usan, ¿qué debe hacer el desinstalador? Podría eliminar de forma segura la configuración de usuario de la cuenta actual, pero la cuenta actual podría no ser su cuenta. (Esto sucede si inició el desinstalador desde una cuenta que no es de administrador y luego ingresó las credenciales de una cuenta de administrador; la configuración ahora se ejecuta en esa cuenta, no en la primera).

¿Qué pasa con los otros usuarios? Podría intentar enumerar a todos los usuarios, pero sus claves de registro podrían no estar cargadas. (Windows es perezoso y solo carga las cosas que necesita).

Pero ni siquiera deberías probarlo. Si utiliza perfiles móviles, por ejemplo, para servicios de terminal, y luego elimina todas las configuraciones en la desinstalación, realmente podría estropear y eliminar cosas que realmente todavía están en uso.

Un servidor de terminal es básicamente una máquina de Windows donde múltiples usuarios inician sesión al mismo tiempo y usan aplicaciones.

Digamos que tiene dos servidores de terminal que ejecutan una aplicación. Desinstala la aplicación en TS1, ahora todas las configuraciones para todos los usuarios han desaparecido en TS2 porque tienes perfiles móviles. ¡Uy!

Lo mismo también se aplica a los archivos en los directorios por usuario.

En la configuración del programa de mi empresa, elimino las cosas por máquina, pero no toco las cosas por usuario, ni siquiera del usuario que actualmente ejecuta la configuración.

Lukas Rieger
fuente
Además, no olvide que desinstalar no significa necesariamente deshacerse de una aplicación por completo: a veces desinstala la versión 1 de una aplicación, luego instala la versión 2 de la misma aplicación; en ese caso, no desea perder toda su configuración.
Stefan
19

Hay muchas razones por las cuales este es el caso, sin embargo, no es culpa de los sistemas operativos de Microsoft o Windows.

La siguiente es una lista de algunos casos y razones detrás de dejar entradas de registro:

  • Mala programación : el desarrollador no escribió el desinstalador de la aplicación correctamente y las entradas del registro se quedan atrás. Además de eso, el desinstalador podría no tener / usar los permisos adecuados para eliminar las entradas del registro. También podría ser que hay más de una aplicación que usa esas claves. Para instancias, dos aplicaciones del mismo desarrollador, que escriben en las mismas claves.

  • Dejados a propósito : como se menciona en un comentario, estas entradas podrían haberse dejado a propósito. Algunas aplicaciones tienen un período de prueba y después de ese período puede optar por eliminar la aplicación. Si elige reinstalar la aplicación más tarde, esas teclas le brindan información sobre cuándo se instaló. Además de eso, algunos desarrolladores pueden optar por dejar esas claves en caso de que decida reinstalar la aplicación. Si el desarrollador utilizó claves de registro para almacenar sus personalizaciones, podrían dejarlas allí, de modo que cuando reinstale todas sus personalizaciones persisten. En el gran esquema, las claves de registro solo ocupan unos pocos bytes.

¿Deberías quitar las llaves? Eso depende. El registro de Windows es un lugar peligroso para jugar. Puede inadvertidamente romper su sistema. Dejar las teclas extrañas no dañará el sistema. Algunas personas dirán que limpiar / desfragmentar el registro acelerará su sistema, pero se ha demostrado que esto es falso repetidamente.

Si realmente desea deshacerse de esos programas, hay algunas herramientas de desinstalación que pueden eliminar cualquier rastro de un programa. Estos programas verán el instalador de otro programa y registrarán todas las acciones realizadas en el sistema de archivos y el registro y luego eliminarán por completo esas acciones. Un problema con estas herramientas es que es posible que puedan eliminar cosas que desee conservar.

Keltari
fuente
A pesar de ser "unos pocos bytes", esos bytes se suman. Puede hacer que el registro se vuelva más lento a medida que se acumulan más y más entradas no utilizadas. Probablemente no sea relevante para un usuario "típico", pero los usuarios pesados ​​tendrán un problema mayor. Esta es la razón por la cual era típico recomendar actualizar / reinstalar Windows cada 6-12 meses para mantener el sistema "saludable". Programas como CCleaner pueden mantener el sistema más rápido por más tiempo, al limpiar las piezas sobrantes de las aplicaciones.
phyrfox
3
@phyrfox como se indica en mi respuesta, los limpiadores de registro son aceite de serpiente. No ayudan en absoluto.
Keltari
1
En los días de Win9x, el tamaño del registro importaba y muchas teclas obsoletas ralentizaban el sistema operativo. Pero eso fue hace mucho tiempo y la industria de NT es una bestia diferente. Sin embargo, a veces es necesario corregirlo: Cómo comprimir colmenas de registro "hinchadas"
beatcracker
10
@phyrfox: "Programas como CCleaner pueden mantener el sistema más rápido por más tiempo" - No, no lo hacen. "Esta es la razón por la cual era típico recomendar actualizar / reinstalar Windows cada 6-12 meses para mantener el sistema" saludable "". Típico porque las personas no saben cómo cuidar sus sistemas. Estoy sentado aquí escribiendo en una instalación de 5 años que ha tenido un uso intensivo y no ha habido una desaceleración apreciable. Son recomendaciones como estas las que mantienen a las empresas que venden aceite de serpiente en el negocio.
Karan
1
Sí, el registro es bastante rápido (y las colmenas y claves de uso común generalmente se guardan en la memoria). Incluso en los viejos tiempos, el mayor problema con el registro "hinchado" era con cosas como las extensiones de shell y HKCR: volvieron tan pronto como reinstaló el software que los proporcionó. Ha pasado bastante tiempo desde que reinstalé el sistema operativo por razones de "rendimiento" la última vez (todavía en Windows XP, nunca en 7).
Luaan
0

Para deshacerse del registro sobrante, intente usar el desinstalador IOBIT. Es, con mucho, el mejor desinstalador que existe. Además, es gratis ... Lo uso todo el tiempo ... Tiene una poderosa función de desinstalación que va directamente a donde la clave de registro restante es, haga clic en la casilla de verificación cuando se le solicite y se eliminen las claves de registro. Iobit viene con otros programas, solo usa el desinstalador para deshacerte de ellos

newtobeingageektech
fuente