Estoy confundido. Ahora mismo escribo algunas aplicaciones pequeñas usando C++ y Java, pero ninguna de ellas debe instalarse. ¿Por qué deben instalarse "grandes aplicaciones" como navegadores, reproductores de medios, juegos, etc.?¿Por qué las aplicaciones necesitan instalación?
Respuesta
Hay varias razones:
Se conectan al sistema. Cuando instale un navegador, se iniciará si abre un archivo que comienza con "http: //" o termina con ".html"
Se utilizan personas que usan aplicaciones para instalarlas. Si su aplicación no viene con un instalador, los usuarios están confundidos sobre cómo ponerlo en funcionamiento. No entienden lo que sucede durante la instalación, simplemente saben que siempre tienen que hacerlo. Por lo tanto, algunas aplicaciones (que no necesitan instaladores) vienen con un simple instalador solo para evitar confusiones.
Muchas aplicaciones complejas pueden hacer las cosas de varias maneras. Puede cambiar los ajustes preestablecidos durante la instalación. Un ejemplo común es qué partes de la aplicación instalar. Para un sistema CAD, puede instalar todo o solo un visor para una PC en una sala de reuniones.
Muchas aplicaciones piden una clave de licencia y/o autenticación en línea para evitar la piratería.
Muchas aplicaciones vienen con archivos DLL. Para asegurarse de que funcionan, sobrescriben todas las DLL en el directorio de sistema de la ventana (y posiblemente rompen todas las demás aplicaciones, pero ¿a quién le importa ?-)
Principalmente porque escriben datos o directorios en todo el sistema. Por ejemplo, las aplicaciones de Windows escriben en el registro y posiblemente en C: \ windows \ system32. Las aplicaciones de UNIX tienden a escribir en archivos de configuración ocultos en el directorio de inicio (por ejemplo, para agregarse como una opción para abrir un tipo de archivo en particular),/usr/share y/etc. Esto se suma a los binarios y bibliotecas reales (que pueden ir en/usr/bin y/usr/lib).
Su aplicación es probablemente autocontenida en un solo directorio, por lo que no necesita instalación.
todo lo mencionado aquí se puede hacer sin instalar – user1363516
Bueno, una de las principales razones son las bibliotecas compartidas (por ejemplo, DLL en Windows). En lugar de que cada aplicación tenga su propia copia de una DLL, la idea es colocarla en un directorio donde todas las aplicaciones puedan acceder a ella. Evitar las copias duplicadas ahorra espacio en el disco.
Para asegurarse de que todo termina en el lugar correcto, necesita un instalador, ya no es tan simple como copiar/pegar el directorio que contiene su aplicación.
Normalmente, porque quieren almacenar el estado y la información con la computadora. Por ejemplo, su aplicación no aparecerá en la ventana Agregar o quitar programas. A muchos programas (que personalmente no me gustan) les gusta almacenar información importante en el registro para búsquedas, lo que significa que generalmente quiere un desinstalador (en lugar de simplemente eliminar el programa) para realizar la limpieza, o pueden introducir extensiones en el explorador u otros elementos. Simplemente eliminar el programa no eliminará esas adiciones, por lo que querría un desinstalador.
porque hacen cosas como:
- valores del registro de escritura para varios dependencias
- Copiar datos
- crear directorios
Etc
Instalación sólo significa la copia de archivos y establecer configuraciones de registro. Cuanto más grande sea la aplicación, más fácil será si sigue los procedimientos estándar.
Cuando una aplicación se "instala":
- Crea un desinstalador para comodidad del usuario
- conjuntos de seguridad de la configuración por defecto en el registro (en Windows)
- Conjuntos de seguridad de la configuración por defecto en el usuario de perfil
- Copia ejecutables binarios a una ubicación estándar
No hay magia detrás de las escenas, solo copia glorificada.
Puede haber muchas razones para esto, por ejemplo.
- asegúrese de que las dependencias estén instaladas (como.NET)
- añadir accesos directos al escritorio/menú de inicio necesidad
- un servicio al domicilio utilizando
- muchos usuarios prefieren este lugar de tener que gestionar los archivos de programa viven mismos
- claves de registro add
- añadir ganchos en el Explorador de windows
- 1. ¿Por qué las aplicaciones Java necesitan un servidor de aplicaciones y .Net solo el servidor web IIS?
- 2. ¿Por qué las transformaciones 2D necesitan matrices 3x3?
- 3. Emacs: las expresiones regulares en Lisp necesitan escaparse por dos veces, ¿por qué?
- 4. ¿Por qué algunos instaladores necesitan reiniciar la computadora antes de ejecutar el programa?
- 5. ¿Por qué las estructuras necesitan que se les diga qué tan grandes son?
- 6. ¿Cuándo se necesitan las interfaces?
- 7. ¿Por qué los applets no necesitan un main()?
- 8. ¿Por qué las aplicaciones django se están moviendo a GitHub?
- 9. ¿Por qué las aplicaciones WinForms STATread de forma predeterminada?
- 10. Delphi XE2: ¿Por qué las aplicaciones FireMonkey son HD?
- 11. ¿Por qué las aplicaciones de Cocoa usan tanta memoria?
- 12. ¿Por qué desaparece el ícono de mis aplicaciones después de una instalación ad hoc (iPhone)?
- 13. ¿Qué necesitan las personas para ejecutar mi aplicación?
- 14. ¿Por qué algunos incluyen necesitan el .h y otros no?
- 15. ¿Por qué los métodos con una sola instrucción necesitan llaves?
- 16. ¿Por qué se necesitan "clases anotadas" si hay @Entidad?
- 17. ¿Por qué se necesitan importar el registro e importar logging.config?
- 18. ¿Por qué se necesitan herramientas de análisis para DSL?
- 19. ¿Por qué algunos idiomas necesitan Boxeo y Unboxing?
- 20. ¿Por qué los módulos concatenados RequireJS AMD necesitan un cargador?
- 21. ¿Por qué los objetos de transferencia necesitan implementar Serializable?
- 22. Por qué los profilers necesitan privilegios administrativos (en Windows)
- 23. ¿Qué clientes de Subversion para Windows existen que no necesitan instalación?
- 24. C#: ¿Las clases abstractas necesitan implementar interfaces?
- 25. ¿Por qué las clases con finalizadores necesitan más de un ciclo de recolección de basura?
- 26. ¿Por qué las anotaciones de funciones necesitan una sintaxis dedicada en Python?
- 27. ¿Por qué las clases de Code First necesitan propiedades de navegación?
- 28. Implementación de aplicaciones Java/Opciones de instalación?
- 29. ¿Por qué las empresas todavía usan las aplicaciones Windows Forms y WPF en lugar de las aplicaciones web?
- 30. Instalación única, múltiples dominios y aplicaciones?
¿Cómo se ejecutan las aplicaciones Java? –
Buena pregunta, y algo que casualmente me he preguntado acerca de mí de vez en cuando. Siempre asumí que era porque las "grandes aplicaciones" usan valores de registro que (pueden) necesitarse configurar como parte del proceso de instalación. –
si su aplicación depende de cualquier biblioteca, excepto las bibliotecas del sistema, necesitará publicar esas bibliotecas en primer lugar en C++, puede poner el archivo dll en la carpeta de la aplicación para que funcione para activex, necesita ser registrado. para hacer una aplicación que no necesita ser instalada en aplicaciones de mfc, elija la biblioteca estática en lugar de la biblioteca compartida. El caminante de dependencia puede ayudarlo mucho "http://www.dependencywalker.com/" le dirá de qué depende su aplicación. bibliotecas nativas con un sistema como "shell32.dll, gdiplus.dll, ...", todas vienen con el sistema sin necesidad de publicar. – ahmedsafan86