Pregunta

Generalmente, cuando uso ClickOnce cuando construyo un programa VB.NET, tiene algunas desventajas.Nunca he usado nada más, así que no estoy seguro de cuáles son mis opciones.

Desventajas de ClickOnce:

  • Consta de varios archivos: parece más fácil distribuir un archivo que administrar varios archivos y que el programa de descarga los descargue.
  • Tienes que compilarlo nuevamente para instalaciones de CD (para cuando el usuario final no tiene Internet)
  • El programa no termina en Archivos de programa: termina oculto en alguna carpeta de captura de aplicaciones, lo que hace que sea mucho más difícil acceder a él mediante acceso directo.

Ventajas de hacer clic una vez:

  • Funciona.Por arte de magia.Y está integrado en VisualStudio 2008 Express.
  • Hace que sea fácil actualizar la aplicación.

¿Windows Installer también hace estas cosas?Sé que no tiene ninguna de las desventajas de ClickOnce, pero sería bueno saber si también tiene las ventajas de ClickOnce.

Actualizar:Terminé usando Wix 2 (Wix 3 estaba disponible pero en el momento en que hice el proyecto, nadie tenía un tutorial competente).Fue agradable porque respaldaba las tres cosas que (eventualmente) necesitaba.Un atajo opcional de inicio con Windows, una opción de inicio cuando el instalador esté listo y tres párrafos de texto que mi jefe cree que evitarán que los usuarios hagan clic en la opción incorrecta.

¿Fue útil?

Solución

¿Ya has visto WiX?

http://wix.sourceforge.net/

Crea instaladores de Windows utilizando un archivo XML y tiene bibliotecas adicionales para usar si desea personalizar sus instaladores y similares.Admito que la curva de aprendizaje para mí fue media-alta para comenzar, pero luego pude crear un segundo instalador sin ningún problema.

Manejará actualizaciones y otros elementos si así lo desea, y puede aplicar permisos de carpeta y similares a los instaladores.También le brinda un mayor control sobre dónde desea instalar exactamente los archivos y es compatible con todas las convenciones de carpetas estandarizadas de Windows, por lo que puede especificar "PROGRAM_DATA" o algo por el estilo y el instalador sabrá colocarlo en C:\Documentos y Configuración odos los usuarios\Datos de aplicación o C:\ProgramData dependiendo de si está ejecutando XP o Vista.

El rumor es que Office 2007 y Visual Studio 2008 usaron WiX para crear su instalador, pero no he podido verificarlo en ninguna parte.Creo que está desarrollado por algunas personas de Microsoft en el interior.

Otros consejos

Estoy de acuerdo con Joseph, mi experiencia con ClickOnce es excelente para la gran mayoría de proyectos, especialmente en un entorno corporativo donde facilita la construcción, publicación e implementación.Implementar la "actualización forzada" para garantizar que los usuarios tengan la última versión cuando se ejecuta es mucho más fácil en ClickOnce y es una de las razones principales por las que lo uso.

Problemas con ClickOnce:En un entorno corporativo, tiene problemas con los servidores proxy y las soluciones alternativas no son ideales.Tuve que implementar algunas aplicaciones en esos casos desde rutas UNC... pero no puedes hacerlo todo el tiempo.Su "zona de pruebas" es excelente, hasta que desees encontrar el ejecutable o crear un acceso directo en el escritorio.

Aún no se ha implementado desde 2008, por lo que no estoy seguro de si esos problemas aún existen.

Crear un proyecto de instalación, que dependa de su EXE (que a su vez depende de lo que necesite) es un proceso bastante sencillo, pero necesitará al menos VS Standard Edition para eso.

Dentro del proyecto de instalación, puede crear tareas personalizadas y pasos de diálogo que le permitan hacer cualquier cosa que codifique.

Lo que falta es la magia de actualización automática y verificación de versiones que obtienes con ClickOnce.Aún puedes incorporarlo, pero no es automático.

No creo que exista una manera fácil de hacer que un proyecto de Windows Installer tenga la facilidad o la capacidad de actualización de ClickOnce.Utilizo ClickOnce para todas las aplicaciones .NET internas que desarrollo (con la excepción de las aplicaciones de consola).Encuentro que en un entorno empresarial, la facilidad de implementación supera la falta de flexibilidad.

ClickOnce puede ser problemático si tiene componentes de terceros que deben instalarse junto con su producto.Puede evitar esto hasta cierto punto creando instaladores para los componentes; sin embargo, con la implementación de ClickOnce debe crear la lógica para actualizar dichos instaladores de componentes.

En una vida anterior utilicé Wise For Windows Installer para crear paquetes de instalación.Si bien la creación de actualizaciones con él no fue automática como lo es ClickOnce, fueron más precisas y generaron menos dolores de cabeza cuando se trataba de otros componentes que debían registrarse/agregarse.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top