You are on page 1of 14

Pgina 1 de 14

Implementacin con ClickOnce


ClickOnce es una tecnologa de implementacin que permite crear aplicaciones Windows cuya
actualizacin puede ser efectuada automticamente. La instalacin de este tipo de aplicacin se
efecta con un mnimo de intervencin por parte del usuario. Esta tcnica simplifica la etapa de
implementacin, que a veces se transforma en un verdadero rompecabezas. A menudo nos
encontramos con los siguientes problemas durante la implementacin de una aplicacin:

Actualizacin de la aplicacin

Con un mtodo de despliegue clsico, cuando est disponible una nueva versin de la
aplicacin, el usuario debe, en general, reinstalar la aplicacin para aprovechar esa
actualizacin. La tecnologa ClickOnce es capaz de facilitar las actualizaciones
automticamente. En este caso, solo se descargan las partes de la aplicacin que han
cambiado, y luego la aplicacin completa y actualizada se reinstala automticamente
desde una nueva carpeta.

Componentes compartidos

Las aplicaciones dependen a menudo de componentes compartidos; de ah la existencia


de un riesgo de conflicto de versiones. En el caso de una implementacin con ClickOnce,
cada aplicacin es autnoma y no puede interferir con las otras.

Autorizacin de seguridad

En general, la instalacin de una aplicacin con un mtodo clsico exige autorizaciones


administrativas en el puesto de trabajo donde se efecta la instalacin. La
implementacin con ClickOnce autoriza a los usuarios que no tienen privilegios
administrativos a efectuar la instalacin y solo les atribuye las autorizaciones de
seguridad de acceso al cdigo necesarias para el buen funcionamiento de la aplicacin.

A veces, todas estas exigencias han conducido a los desarrolladores a elegir una tecnologa Web en
lugar de aplicaciones Windows clsicas, simplemente para beneficiarse de las facilidades de
implementacin de este tipo de aplicaciones. La contrapartida de esta eleccin se encuentra en una
reactividad menor de la aplicacin y en una interfaz de usuario menos elaborada. La tecnologa
ClickOnce hace que la implementacin de aplicaciones Windows sea tan sencilla como la
implementacin de aplicaciones Web. Cualquier aplicacin de consola o de Windows Formes se puede
publicar con ClickOnce. Hay tres tcnicas de publicacin disponibles:

A partir de una pgina Web.

A partir de una comparticin de archivos de red.

A partir de un soporte como CD-Rom o DVD.

La ejecucin de la aplicacin dispone de dos variantes. Se puede instalar en el ordenador de un


usuario y ejecutarse incluso si no tiene conexin. Tambin se puede ejecutar nicamente en modo en
lnea sin instalar ningn elemento de manera permanente en el ordenador. Las aplicaciones ClickOnce
estn aisladas unas de otras, y la instalacin o la ejecucin de una aplicacin no puede interrumpir
aplicaciones existentes. Por defecto, las aplicaciones ClickOnce se ejecutan en las zonas de seguridad
de Internet o de la Intranet. En funcin de las necesidades, la aplicacin puede exigir autorizaciones
de seguridad ms elevadas.

La actualizacin de la aplicacin tambin puede tener varios modos de funcionamiento. Pueden ser

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 2 de 14

automticos; en este caso, la aplicacin verifica en cada inicio si hay actualizaciones disponibles, y
luego las instala automticamente. El usuario puede comprobar de forma manual la existencia de una
actualizacin y decidir o no su instalacin. El administrador puede convertir en obligatoria la
instalacin de una actualizacin.

1. Principio de funcionamiento de ClickOnce

El mecanismo de implementacin de ClickOnce se basa en dos archivos XML llamados manifiestos:

Un manifiesto de aplicacin.

Un manifiesto de implementacin.

El manifiesto de aplicacin describe la propia aplicacin, los ensamblados y los archivos que la
componen, las dependencias, las autorizaciones requeridas para la ejecucin y la ubicacin donde
estn las actualizaciones disponibles.

El manifiesto de implementacin describe cmo se implemetar la aplicacin, incluyendo la ubicacin


del manifiesto de aplicacin y la versin de la aplicacin que deben ejecutar los clientes. Estos dos
archivos son generados por Visual Studio.

El manifiesto de implementacin se copia en la ubicacin de la implementacin. Esta ubicacin


puede ser un servidor Web, un directorio compartido en la red o soportes mviles, como un CD-
Rom. El manifiesto de aplicacin y todos los archivos de la aplicacin tambin se copian en una
ubicacin de implementacin especfica en el manifiesto de implementacin. Se pueden copiar estos
archivos en la misma ubicacin o en dos ubicaciones distintas. Visual Studio tambin se encarga de
las copias de estos archivos.

Despus de la implementacin de la aplicacin en la ubicacin de la implementacin, los usuarios


pueden descargar e instalar la aplicacin haciendo clic en el icono que representa el archivo del
manifiesto de implementacin disponible en una pgina Web o en una carpeta. El usuario solo ver
un cuadro de dilogo que le pide confirmar la instalacin.

Despus de la validacin, la instalacin contina y se lanza la aplicacin sin otra intervencin. Si la


aplicacin requiere autorizaciones de ejecucin ms elevadas, el cuadro de dilogo pide al usuario
que conceda las autorizaciones para que la instalacin pueda proseguir.

La aplicacin se aade al men Inicio del usuario y a la seccin Agregar o quitar programas del
Panel de control. A diferencia de otras tecnologas de implementacin, no se aade nada a la
carpeta Program Files, en la base de registro o en el escritorio. Adems, no es necesario ningn
derecho de administracin para la instalacin.

Cuando crea una versin actualizada de la aplicacin, tambin debe generar un nuevo manifiesto de
aplicacin y copiar los archivos en la ubicacin de la implementacin, en general una carpeta similar
a la carpeta de la implementacin original. Tambin se debe actualizar el manifiesto para que
apunte hacia la ubicacin de la nueva versin de la aplicacin.

2. Los diferentes mtodos de implementacin

Para implementar una aplicacin ClickOnce, hay tres estrategias posibles. La estrategia que elija
depende principalmente del tipo de aplicacin que va a implementar. Las tres estrategias son las

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 3 de 14

siguientes:

Instalacin desde la Web o una red compartida.

Instalacin desde un CD-Rom.

Arranque de la aplicacin desde la Web o una red compartida.

Instalacin desde la Web o una red compartida

Esta estrategia permite implementar la aplicacin en un servidor Web o una red compartida. Cuando
un usuario final desea instalar la aplicacin, debe hacer clic en un icono de una pgina Web o doble
clic en un icono de archivos compartidos. Luego se descarga, instala y arranca la aplicacin en el
ordenador del usuario. Algunos elementos se aaden al men Inicio y al grupo Agregar o quitar
programas en el Panel de control.

Puesto que esta estrategia depende de la conexin de red, funciona de manera ptima para las
aplicaciones implementadas por usuarios con acceso a una red local o una conexin rpida a
Internet.

Instalacin desde un CD-Rom

Esta estrategia permite implementar la aplicacin en un soporte mvil, como un CD-Rom o un DVD.
Como para la opcin anterior, cuando el usuario elige instalar la aplicacin, esta ser instalada,
lanzada y algunos elementos se agregarn al men Inicio y al grupo Agregar o quitar programas
en el Panel de control.

Esta estrategia funciona mejor en el caso de aplicaciones implementadas en ordenadores de


usuarios sin conexin a la red o cuya conexin a Internet es lenta. Como la aplicacin est instalada
a partir de un soporte mvil, no es necesaria ninguna conexin para la instalacin; sin embargo, s
lo es para las actualizaciones de la aplicacin.

Arranque de la aplicacin desde la Web o una red compartida

Esta estrategia es similar a la primera, excepto por que la aplicacin acta como una aplicacin
Web. La aplicacin se ejecuta cuando el usuario hace clic en un hipervnculo de una pgina Web (o
doble clic en un recurso compartido). Cuando los usuarios cierran la aplicacin, esta ya no est
disponible en el ordenador local. Ningn elemento se aade al men Inicio o al grupo Agregar o
quitar programas en el Panel de control. Tcnicamente, la aplicacin se descarga e instala en un
cach de la aplicacin del ordenador local, de la misma manera que una aplicacin Web se descarga
en el cach Web. Como para el cach Web, los archivos son eliminados del cach de la aplicacin al
final de la utilizacin. Sin embargo, el usuario tiene la impresin de que la aplicacin se ejecuta
desde la Web o la red compartida.

Esta estrategia es preferible para las aplicaciones que se utilizan poco.

3. Las actualizaciones de la aplicacin

ClickOnce puede facilitar automticamente las actualizaciones de la aplicacin. Una aplicacin


ClickOnce lee peridicamente su archivo manifiesto de implementacin para comprobar si las
actualizaciones de la aplicacin estn disponibles. Si est disponible, la nueva versin de la

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 4 de 14

aplicacin se descarga y ejecuta. Por razones de eficacia, solo se descargan los archivos
modificados.

Hay tres estrategias bsicas posibles para las actualizaciones:

La verificacin de las actualizaciones durante el arranque de la aplicacin.

La verificacin de las actualizaciones despus del arranque de la aplicacin (ejecutada en un


thread de segundo plano).

La presentacin de una interfaz de usuario destinada a las actualizaciones.

Tambin se puede determinar la frecuencia de verificacin de las actualizaciones que debe efectuar
la aplicacin o configurar una actualizacin obligatoria. Las actualizaciones de aplicacin exigen una
conexin a la red. En ausencia de una conexin, la aplicacin se ejecuta sin verificar las
actualizaciones, sea cual sea la estrategia de actualizacin elegida.

Verificacin de las actualizaciones despus del arranque

Por defecto, la aplicacin intenta localizar y leer el archivo manifiesto de implementacin en segundo
plano durante su ejecucin. Si una actualizacin est disponible, se invitar al usuario a descargar e
instalar la actualizacin durante la prxima ejecucin.

Esta estrategia se adapta particularmente a las conexiones de banda ancha restringida o a las
aplicaciones voluminosas que puedan necesitar descargas largas.

Verificacin de las actualizaciones durante el arranque

Con esta estrategia, la aplicacin intenta localizar y leer el archivo manifiesto de implementacin en
cada lanzamiento. Si una actualizacin est disponible, se descargar y ejecutar. En caso contrario,
se ejecutar la versin existente de la aplicacin.

Esta estrategia se adapta bien a las conexiones de banda ancha. El plazo necesario para iniciar la
aplicacin puede ser inaceptable en conexiones que no sean de banda ancha.

Actualizaciones obligatorias

A veces es necesario obligar a los usuarios a ejecutar una versin actualizada de la aplicacin si, por
ejemplo, se ha modificado un recurso que pueda perturbar el funcionamiento de su antigua versin.
En este caso, puede marcar la actualizacin como obligatoria y, por lo tanto, impedir la ejecucin de
una versin ms antigua de la aplicacin. Se debe asociar esta estrategia con la verificacin de las
actualizaciones durante el arranque.

Intervalos de actualizacin

En el marco de las actualizaciones automticas, se puede especificar la frecuencia de verificacin de


las actualizaciones. Por ejemplo, puede desear una verificacin con cada ejecucin de la aplicacin,
una vez a la semana o una vez al mes. Si ninguna conexin red est disponible en el momento
especificado para la verificacin, esta se efecta con la prxima ejecucin de la aplicacin.

Bloqueo de las actualizaciones

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 5 de 14

Tambin es posible hacer que su aplicacin no se actualice nunca. Puede, por ejemplo, implementar
una aplicacin sencilla que no necesite ser actualizada, pero utilizar la ventaja que ofrece ClickOnce
para su instalacin.

4. Puesta en marcha de la publicacin ClickOnce

La publicacin de una aplicacin con la tecnologa ClickOnce est facilitada por un asistente que
permite recoger la mayora de los datos necesarios para la implementacin. Este asistente est
disponible en el explorador de soluciones al elegir la opcin Publicar del men contextual del
proyecto que se va a implementar. Sin embargo, algunas opciones de la implementacin no son
gestionadas por este asistente y deben configurarse manualmente a travs el cuadro de dilogo de
las propiedades del proyecto.

La primera etapa del asistente consiste en configurar la ubicacin donde se debe hacer la
publicacin.

Esta ubicacin puede ser:

Un directorio de la mquina.

Un directorio compartido en otra mquina indicando una ruta UNC de la siguiente manera
\\nombre de la mquina\nombre del directorio. Es necesario tener la autorizacin de
escribir sobre la particin para que la publicacin se pueda realizar.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 6 de 14

El servidor Web IIS de la mquina en el que previamente se habr agregado un directorio


virtual para acoger los archivos.

Un servidor FTP cuya informacin de conexin debe facilitar usando el cuadro de dilogo
siguiente:

Debe indicar:

La direccin IP o el nombre del servidor FTP.

El nmero del puerto utilizado para contactar con el servidor (en general, 21).

El directorio del servidor en el que se efectuar la copia de los archivos. Necesitar tener la
autorizacin de escritura en este directorio.

Si se protege con un firewall, asegrese de activar la opcin Modo pasivo.

Si usted se conecta de manera annima o, en caso contrario, el nombre de usuario y la


contrasea utilizados para la conexin.

La segunda etapa determina cmo van a instalar la aplicacin los usuarios.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 7 de 14

Las opciones posibles son:

Desde un sitio Web cuya URL se debe indicar.

Desde un recurso compartido cuya ruta de acceso UNC deber especificar. Por supuesto, los
usuarios deben tener derecho de lectura en el recurso compartido. El derecho de escritura
no es obligatorio e incluso muy desaconsejado.

Desde un CD-Rom o DVD que usted proporcionar. La creacin de este soporte no la realiza
el asistente y se debe efectuar con una aplicacin de grabacin externa.

La ltima etapa visualiza un resumen de los datos seleccionados y permite lanzar la publicacin con
el botn Finalizar.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 8 de 14

Al final de la instalacin, se abre una pgina HTML en la ubicacin utilizada durante la publicacin
que permite el arranque de la instalacin o la ejecucin de la aplicacin.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 9 de 14

Las opciones de implementacin ms especficas se deben configurar con la seccin Publicar de las
propiedades del proyecto. Este cuadro de dilogo reanuda las propiedades configuradas por el
asistente de publicacin.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 10 de 14

Los botones Archivos de aplicacin, Requisitos previos, Actualizaciones y Opciones permiten


dar el ltimo toque a los ajustes.

El botn Archivos de aplicacin muestra el siguiente cuadro de dilogo relativo a los archivos que
constituyen la aplicacin.

El estado de la publicacin de cada archivo se puede configurar con tres valores diferentes:

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 11 de 14

Incluir: el archivo estar disponible para los usuarios en el soporte de implementacin.

Excluir: el archivo no se copia en el soporte de implementacin.

Archivo de datos: el archivo contiene datos necesarios para el correcto funcionamiento de


la aplicacin y ser incluido en la publicacin.

El botn Requisitos previos se utiliza para configurar los elementos necesarios para el
funcionamiento de la aplicacin.

Puede optar por crear un programa de instalacin para los componentes que requiere el
funcionamiento de la aplicacin marcando la casilla Crear programa de instalacin para instalar
los componentes necesarios. Se debe elegir los componentes correspondientes en la lista
presentada. Tambin debe indicar desde qu ubicacin se instalarn estos componentes. Hay tres
opciones posibles:

Desde el sitio Web del proveedor del componente.

Desde la misma ubicacin que la utilizada para instalar la aplicacin.

Desde la ubicacin indicada.

La configuracin de las actualizaciones prevista durante la utilizacin del asistente puede ser
modificada con el botn Actualizaciones.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 12 de 14

La casilla La aplicacin debe buscar actualizaciones especifica que la aplicacin debe verificar la
disponibilidad de actualizaciones en el momento de su instalacin. Si selecciona esta opcin, las
otras opciones estarn disponibles. Permiten elegir el momento en el que tendr lugar la verificacin
de la disponibilidad de una actualizacin. La opcin Antes de que se inicie la aplicacin indica
que la aplicacin debe verificar la disponibilidad de las actualizaciones antes del arranque. Esto
garantiza que los usuarios conectados a la red siempre disponen de la versin ms reciente de la
aplicacin. Esta opcin puede ralentizar el arranque de la aplicacin en el caso de que existan
actualizaciones disponibles. La opcin Despus de que se inicie la aplicacin planifica la
ejecucin de la actualizacin durante el prximo arranque de la aplicacin. La frecuencia de las
actualizaciones tambin se puede indicar en horas, das o semanas, o bien ejecutarse cada vez que
arranca la aplicacin. Tambin puede indicar la ubicacin a partir de la cual estn disponibles las
actualizaciones, si esta es diferente de la ubicacin de instalacin.

El ltimo botn sirve para configurar varias opciones de implementacin.

Las opciones siguientes estn disponibles:

Idioma de publicacin

Especifica el idioma (y los parmetros regionales) en el que se publica la aplicacin.

Nombre del editor

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 13 de 14

Especifica el nombre del editor de la aplicacin. Si esta zona est vaca, se usar el valor
de la propiedad RegisteredOrganization del ordenador. Si este valor es nulo, se
utiliza el nombre del proyecto utilizado.

Nombre del producto

Especifica el nombre del editor de la aplicacin. Si esta zona est vaca, se utiliza el
nombre del ensamblado.

Direccin URL de soporte

Especifica un sitio Web que contiene datos de soporte para la aplicacin. La


especificacin de esta URL es facultativa. Pero si se utiliza, esta URL aparece en la
entrada Agregar o quitar programas de la aplicacin en el Panel de control de
Windows.

Implementacin de la pgina Web

Especifica un nombre para la pgina Web de implementacin. El nombre del archivo por
defecto es Publish.htm.

Generar automticamente la pgina Web de implementacin despus de cada publicacin

Si esta opcin est seleccionada, el proceso de publicacin genera una pgina Web de
implementacin en cada publicacin. Esta opcin solo est disponible si se especifica
una pgina Web de implementacin.

Abrir la pgina Web de implementacin despus de publicar

Si se selecciona esta opcin, la pgina Web de implementacin generada


automticamente se abre despus de la publicacin.

Bloquear la aplicacin para que no se active mediante una direccin URL

Si esta opcin est desactivada, la aplicacin se ejecuta automticamente despus de la


instalacin. Si est activada, el usuario deber arrancar la aplicacin desde el acceso
directo del programa en el men Inicio.

Utilizar la extensin de archivo .deploy

Si est opcin est seleccionada, el archivo de implementacin utiliza la


extensin .deploy. Algunos servidores Web estn configurados para bloquear, por
razones de seguridad, los archivos que no suelen estar presentes en un sitio Web. Por
ejemplo, los archivos que llevan las extensiones siguientes se pueden bloquear: .dll,
.config, .mdf. Las aplicaciones Windows suelen contener archivos con algunas de estas
extensiones. Si un usuario intenta ejecutar una aplicacin ClickOnce que accede a un
archivo bloqueado en un servidor Web, se produce un error. En vez de desbloquear
todas las extensiones del archivo, se publica cada archivo de aplicacin por defecto con
una extensin de archivo .deploy. Si la opcin se utiliza, el servidor Web solo debe
estar configurado para desbloquear las tres extensiones de archivos siguientes:

.application

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014
Pgina 14 de 14

.manifest

.deploy

Permitir que se pasen los parmetros de la direccin URL a la aplicacin

Por defecto, esta opcin est desactivada. Si esta opcin est activada, la aplicacin
ser capaz de acceder y tratar los datos de los parmetros de la URL.

En las instalaciones desde CD, el programa de instalacin se inicia automticamente al


insertar el CD

Si esta opcin est seleccionada, se aade un archivo Autorun.inf a la raz del soporte
para las aplicaciones ClickOnce que se instalan desde un CD-Rom o DVD-Rom.

Comprobar los archivos cargados en un servidor web

Si esta opcin est activada, el proceso de publicacin descarga cada archivo para
verificar que efectivamente se pueden descargar, y le informar de los archivos que no
se pueden descargar.

Usar el manifiesto de la aplicacin para la informacin de confianza

Cuando esta opcin est seleccionada, puede firmar de nuevo el manifiesto de la


aplicacin con la ayuda de un certificado que contiene sus propios datos.

http://www.mediapluspro.com/mediaplus69/client_net/mediabook/mediaexport.aspx?sess... 02/09/2014

You might also like