Mediante ClickOnce podemos publicar en la red nuestras aplicaciones de escritorio usando Visual Studio, del mismo modo que publicamos un servicio o pagina web. Al mismo tiempo que conseguimos que nuestra aplicación pueda ser descargada por cualquier persona, nos proporciona implícitamente un gestor de versiones, avisando al usuario de cualquier nueva actualización de nuestra aplicación. Desde las propiedades de nuestro proyecto podemos encontrar toda la configuración necesaria para reliazar la publicación:
Automáticamente, ClickOnce te genera una pagina web en el sitio de publicación (en este caso veis que he usado una conexión por ftp para subir los ficheros) para poder realizar la instalación de la aplicación. El aspecto de la web es el siguiente:
En el proyecto DotNetCenter queríamos aprovechar esta herramienta. Aparte de poder encontrar toda la información sobre dicho proyecto en el link anterior, simplemente resumiros que dicha aplicación fue lanzada por algunos coordinadores de los DotNetClubs de diferentes partes de España para intentar crear una sencilla y genérica aplicación para la gestion administrativa interna de los clubs. Alguna de las características más atractivas del proyecto son:
-
Soporte de nuevos módulos mediante plugins
-
Histórico para soporte de errores mediante un log común
-
Información de las plugins cargadas
-
Envío de feedback o errores de Plugins por Email
-
Pequeñas configuraciones mediante XML
-
Soporte multilenguaje mediante XML
-
Control de versiones automático mediante ClickOnce
-
Control de código fuente mediante CodeGoogle
Estos últimos días, me encontraba con Javier Cantón preparando la actualización automática mediante ClickOnce. Pero teníamos un pequeño problema con los ficheros XML de configuración, los cuales están situados junto al fichero ejecutable principal del programa y no eran encontrados cuando se iniciaba la instalación desde la web. La razón de ello se debía a que Visual Studio cataloga por defecto estos ficheros como de datos, y cuando se inicia la instalación desde la web, los copia en directorios distintos, por lo que la aplicación principal nos los encuentra donde los esperaba. Para solucionar ello simplemente debemos indicarle en Propiedades del proyecto -> Publish -> Applications Files que dichos ficheros XML serán incluidos, es decir, cambiamos su estado de publicación «Data File» por «Include».
Para terminar, simplemente deciros que este proyecto es totalmente Open Source y cualquier persona es bien recibida a colaborar. Además de para la gestión de los DotNetClub, también podría ampliarse a los grupos de usuarios, ¿qué os parece?
Como os decía, podeis encontrar toda la información del proyecto en:
http://dotnetcenter.dotnetclubs.com/
Un saludete!