domingo, junio 07, 2009

Auto-instalador de proyectos - Visual Studio 2008 Express Edition

Mientras usaba Visual C# 2008 Express Edition SP1 (descarga gratuita) encontré la opción para generar un instalador de proyectos en equipos Windows que no tienen Visual Studio instalado. Esto se conoce en otros ambientes como Install Wizard.



Cuando uno intenta correr un ejecutable compilado con el .NET Framework 3.5 en una máquina que no lo tiene instalado, la aplicación enviará un error o se ejecutará pero dejará de funcionar después de unos cuantos clicks. La solución es instalar el Framework en la máquina o generar un autoinstalador con Visual Studio.

Los pasos para generarlo son los siguientes:

+ En la ventana de Visual C# o de cualquier otro miembro de Visual Studio ir al menú Proyecto.
+ Elegir Propiedades de Proyecto..., donde Proyecto es el nombre actual de tu aplicación.
+ Se abrirá una nueva pestaña en el área de trabajo, dar click en la opción Publicar.
+ Normalmente no hay que modificar ninguna opción, salvo la de la ruta en donde se publicarán los archivos.
+ Dar click en Publicar ahora.

El compilador generará una serie de archivos en la carpeta /Publish dentro de los cuales está uno llamado Setup.exe, el cual será el que iniciará el proceso de instalación en la máquina destino.

La máquina destino deberá contar con una conexión a internet para poder descargar los componentes necesarios para que nuestro proyecto se ejecute al 100%. Probé el instalador en una máquina virtual con una instalación fresca de Windows XP SP2 y los componentes que bajó el instalador fueron Windows Installer 3.1 y .NET Framework 3.5 Sp1. La descarga es grande, calculo que son como 100MB de descarga o menos ya que tarda mucho en bajar los archivos.



La instalación es sencilla solo hay que aceptar los contratos de licencia y demás cosas. Una vez terminada la instalación nuestro ejecutable podrá ser accedido desde el menú Inicio como cualquier otra aplicación.


Una recomendación... hay que copiar el instalador (setup.exe, la carpeta Application Files y la aplicación) en una ubicación como Archivos de Programa o cualquier otra carpeta fija ya que el ejecutable será corrido desde esa ubicación después de ser instalado, no podrás moverlo de lugar.

El acceso directo que se genera en el menú Inicio no es como los que siempre hemos visto, es un archivo con extensión .appref-ms que se encarga de ejecutar la aplicación principal (link con info). El contenido del archivo es texto simple que trae la ruta de la aplicación y el tipo de procesador para el que se compiló. Pero también la aplicación principal no es normal, tiene extensión .application. En fin, el punto es que funcione el programa en cualquier otra computadora y el objetivo se cumple.

Muchos de nosotros como estudiantes usamos Visual Studio Express para proyectos escolares, pero este paquete puede usarse para compilar aplicaciones comerciales sin problema alguno según la FAQ de Microsoft. Es decir, puedes vender tus programas con toda libertad.

http://www.microsoft.com/express/support/faq/
7. Can I use Express Editions for commercial use?
Yes, there are no licensing restrictions for applications built using Visual Studio Express Editions.

6 comentarios:

CaeL dijo...

Felicitaciones por el post me sirvio de mucho muy bien explicado.

rubbens dijo...

muchisimas gracias me sirvio mucho

Anónimo dijo...

Gracias amigo, muchas gracias..

Anónimo dijo...

Gracias men me ayudaste, una consulta; Como puedo conectarme con una BD sqlServer ya q solo estoy con la BD SqlExpress con el q vine VS Express para poder publicar mi proyecto. Gracias de ante mano.

MigSantiago dijo...

Puff de eso no sé mucho, sólo he usado MySQL, las de Microsoft no las he trabajado.

Anónimo dijo...

Cesar

Gracias por tu aporte me sirvio mucho con el VS2010 express