Estoy desarrollando una aplicación de código abierto C#. Por un tiempo, he estado usando un instalador .NET básico que codifiqué a mí mismo. Sin embargo, con un cambio reciente, ya no es práctico para mí, ya que tendría que agregar una gran cantidad de archivos al instalador, y pueden cambiar con cada versión. Un archivo ZIP tampoco es práctico.Instalador para la aplicación C#
He hecho algunas comprobaciones en línea, veo una gran cantidad de MSI, ClickOnce, ZIPs autoextraíbles, y (lo más prometedor) el sistema NSIS. Ninguno de ellos parece ajustarse exactamente a mis necesidades, entonces estoy buscando consejos sobre qué sistema usar.
La instalación real de mi programa es muy simple. Básicamente, solo necesito copiar el directorio bin \ Release (y todos los subdires) a la computadora del cliente. He estado logrando esto algo ad-hoc, incrustando cada archivo en mi instalador de .NET, y manteniendo una tabla de archivos de qué va donde.
Desafortunadamente, acabo de localizar mi aplicación. Ahora tengo más de 30 archivos .resx (que están compilados en dlls y colocados en más subdirectorios por Visual Studio) y, obviamente, no es práctico agregar más de 30 carpetas y archivos DLL a mi instalador. De ahí por qué estoy en esta búsqueda.
También hay algunos otros requisitos:
- El instalador debe buscar en los directorios predefinidos para un .exe especificado. (Mi aplicación está diseñada para ser un reemplazo). Si no se encuentra .exe, debe solicitar su ubicación
- El instalador debe verificar que exista "OldApp.exe.bak". De lo contrario, debería cambiar el nombre de "OldApp.exe" a "OldApp.exe.bak"
- El instalador debería actualizar los archivos. Es decir, si "Culture.de.dll" no ha cambiado, el instalador lo dejará en paz.
- El instalador debería funcionar con todas las versiones de Windows de todos los .NET IDEs (VS, SharpDevelop, Mono, ect) pero no necesita trabajar en otras plataformas.
- Cuando construyo la solución, el instalador debe regenerarse automáticamente. En otras palabras, debe poder ejecutarse mediante la sección "Publicación posterior".
- La generación del instalador debe poder agregarse a un repositorio de código fuente. Esto es para que cualquiera que descargue la fuente de mi aplicación también pueda compilar el instalador.
Lo siento por la larga publicación, pensé que era mejor publicar más que menos.
¿Cuál es el nombre/url de su aplicación opensource? –