JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Nueva versión de CassiniAqui: sirve localmente cualquier carpeta con una aplicación Web

Hace ya más de 4 años, en diciembre de 2005, creé esta pequeña pero útil herramienta para programadores llamada CassiniAqui.

Se trata de una aplicación que, una vez registrada en el sistema, añade una nueva opción al menú contextual de cada carpeta que nos permite servir sus contenidos usando el servidor Web de desarrollo de Visual Studio:

Esto resulta muy útil a la hora de probar aplicaciones Web sin tener que abrir Visual Studio, para poder jugar con ellas de forma ligera en local.

El servidor de desarrollo que viene con cualquier versión de Visual Studio es una versión modificada del conocido servidor Web Open Source llamado Cassini, de ahí el nombre de la herramienta.

Novedades de esta versión

Esta versión de CassiniAqui lleva el número 4.0 para hacerlo coincidir con el de la plataforma .NET. Lo he escrito con Visual Studio 2010 y C#, pero lo he compilado con la versión 2.0 del framework, por lo que puede ser utilizado aunque tengamos instaladas versiones más antiguas del entorno de desarrollo.

Entre las novedades de esta versión cabe destacar:

· Soporte para Visual Studio 2005, Visual Studio 2008 y Visual Studio 2010.
· Soporte de versiones de 32 y 64 bits de Windows XP/Vista/7. Es diferente la forma de localizar el servidor en los sistemas x64 y en x86.
· Posibilidad de que el servidor ejecute la versión 2.0 o la 4.0 del framework gracias al parámetro “-v:” o “/v:”. De este modo podemos lanzar la más adecuada para la aplicación web que estamos probando (tienen cosas incompatibles, como la composición del web.config, por ejemplo). Por defecto lanzará siempre la versión más moderna disponible del framework. Así si tenemos VS2010 lanzará la 4.0, pero si tenemos una versión anterior de Visual Studio lanzará la 2.0.
· Posibilidad de elegir un puerto estático para el servidor en lugar de uno aleatorio, con el parámetro “-p:” o “/p:”.

Descarga e Instalación

Puedes obtener el programa descargando este archivo: CassiniAqui_4_0.zip (14 KB).

Dentro del ZIP encontrarás un ejecutable y un archivo .reg. Descomprime en cualquier carpeta de tu disco duro y haz lo siguiente:

1.- Copia CassiniAqui.exe a cualquier carpeta que esté en el PATH de tu máquina. Por ejemplo en C:\Windows.
2.- En la primera carpeta, donde has descomprimido, haz doble click sobre el archivo .reg y acepta el mensaje de advertencia que se muestra. Esto meterá una clave en el registro que añade una nueva opción al menú contextual de las carpetas para poder servirlas con el servidor web de desarrollo (figura anterior).

Además de poder lanzar la utilidad desde este menú contextual podrás usarla también desde línea de comandos, así:

CassiniAqui.exe <ruta a la carpeta>  [-v:versión]  [-p:puerto]

El único parámetro obligatorio es la ruta a la carpeta que quieres lanzar (si tiene espacios deberás meterla entre comillas dobles).

El parámetro –v (puede ser también /v indistintamente) indica la versión del framework que quieres utilizar para servir las páginas. En este momento las soportadas son la 2.0 (válida para VS2005 y VS2008) y la 4.0 (válida para VS2010). Si tienes instalado solamente VS2010 podrás usar igualmente la versión 2.0 pues tiene soporte para ello. Por defecto, si no se indica, intentará lanzar la versión 4.0 y si no puede lanzará la 2.0.

El parámetro –p (o /p) sirve para especificar un puerto fijo para lanzar la aplicación. Esto puede ser útil por ejemplo para probar servicios Web que otras aplicaciones utilicen y que tengan un puerto concreto. Si no se especifica (opción por defecto en el menú contextual) se lanza en un puerto aleatorio entre el 1000 y el 9999.

Ejemplos:

· CassiniAqui.exe C:\MisWebs\Prueba1 /p:8081 –v:2.0  --> Sirve la carpeta indicada en el puerto 8081 y usando la versión 2.0 del framework
· CassiniAqui.exe C:\MisWebs\Prueba1 --> Sirve la carpeta usando un puerto aleatorio y la versión más alta del framework que esté disponible en el equipo.

Código fuente

El código fuente de la aplicación está disponible aquí: CassiniAqui_4_0_Source.zip (15 KB).

Puede resultarte interesante echarle un vistazo pues tiene algunos detalles dignos de mención. Por ejemplo el uso de una enumeración junto con reflexión y comprobación de valores  para poder añadir en el futuro nuevas versiones de manera sencilla (bastará con añadir un nuevo valor a la enumeración y un nuevo caso a un switch, generándose la documentación y la validación del parámetro –v de manera automática). También hay algunos otros más.

El código está comentado para facilitar su comprensión. Está generado con Visual Studio 2010 aunque si añades manualmente el archivo .cs a una versión anterior de VS podrás compilarlo sin problemas.

¡Espero que te resulte útil!

José Manuel Alarcón
Banner

Pingbacks and trackbacks (1)+

Agregar comentario