
Supongo que esto es principalmente una cuestión de Windows, pero ¿por qué es necesario instalar algunos programas para que funcionen correctamente y luego desinstalarlos para eliminarlos, mientras que otros simplemente vienen como archivos ejecutables que se pueden ejecutar y eliminar de forma independiente?
Respuesta1
Cuando un programador utiliza una función que no es nativa de Windows sino que requiere una DLL compartida, por ejemplo un marco de algún tipo, es necesario instalar el programa para asegurarse de que todas las DLL compartidas estén ubicadas en el lugar correcto.
La desinstalación hace lo mismo, verá si las DLL compartidas utilizadas por el programa son utilizadas por otros programas y, si no, las eliminará.
Las DLL compartidas generalmente se colocan en la carpeta C:\Windows\System32 (o syswow64 respectivamente).
A veces, un programador simplemente quiere incluir un instalador para que coloque automáticamente accesos directos en el menú de inicio y/o en el escritorio, mientras que el programa en sí no utiliza archivos DLL compartidos.
Por último, algunos lenguajes de programación compilan código script en un ejecutable y utilizan ciertas bibliotecas. Visual Basic es una forma de dicho lenguaje. En estos casos, necesita incluir un conjunto de archivos DLL con su programa para asegurarse de que funcionen correctamente. Copiar el ejecutable aún puede funcionar si esas DLL compartidas ya están presentes en el sistema, pero si no lo están, el usuario recibirá un error indicando que se ha perdido un determinado archivo, por ejemplo: vbvm50.dll (tiempo de ejecución de Visual Basic 5.0)