RSS 2.0 Atom 1.0 CDF  
JASoft.org - July, 2009
El blog de José Manuel Alarcón Aguín. Programación .NET y mucho más...
 

Pues esto, pero con algún taco de por medio, fue lo que me pregunté la primera vez que quise utilizarlo en la versión 2008 de SQL Server.

En SQL Server 2005 estaba en el nodo de administración del SQL Server Management Studio, bien a la vista y fácil de localizar. Pero en 2008 en ese nodo no hay nada que se le parezca ?¿?¿

Era imposible que se o hayan cargado así que en algún sitio debía de estar ¿no?

Bueno la solución es fácil, ahora está en un botón de la barra de herramientas y en el menú contextual del nodo raíz con el nombre del servidor:

La verdad es que podían haber dejado el nodo en donde estaba también ¿no?

La buena noticia es que este nuevo monitor no tiene nada que ver con el anterior. Este es mucho más potente y da información muy valiosa, informándote incluso de las consultas que están tomando más tiempo y dándote pistas para optimizar las aplicaciones:

Espero que a alguno le ayude a encontrarlo si busca este tema en Google :-)

Por: José Manuel Alarcon | Friday, July 31, 2009 6:35:50 PM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: SQL Server


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Por si alguno no estaba convencido aún de la importancia de escribir código pensando en la seguridad que se lea este artículo sobr eel último fallo de seguridad de Internet Explorer:

http://blogs.msdn.com/sdl/archive/2009/07/28/atl-ms09-035-and-the-sdl.aspx

Y si el tema te interesa de verdad: ya sabes.

 

Foto por Gui Tavares, Flickr

Por: José Manuel Alarcon | Thursday, July 30, 2009 9:49:28 AM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Programación | Seguridad


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Al final no ha habido boda, pero casi...

Firma Microsoft-YahooDentro de la intensa batalla por el control de las búsquedas online Yahoo y Microsoft han optado por arrinconar sus pasadas diferencias y han anunciado una alianza para competir contra Google. Según el acuerdo formalizado el día 28 de julio y con una validez para diez años, los nuevos socios se comprometen a utilizar el buscador Bing de Microsoft pero mejorado por la tecnología propia desarrollada por Yahoo.

A partir de ahora, Yahoo se encargará de las ventas mundiales de anuncios asociados con búsquedas "online". Durante los primeros cinco años del acuerdo, Microsoft pagará a su socio hasta un 88 % de los ingresos publicitarios generados a través de la presencia de Yahoo en la Red. Las previsiones de que Yahoo pueda sumar a sus cuentas de resultados unos 500 millones de dólares al año, además de unos ahorros de 275 millones.

A juicio de Steven Ballmer, máximo ejecutivo de Microsoft, "con este acuerdo, vamos a creer más innovación en las búsquedas de Internet, mejor valor para los anunciantes y opción real para los consumidores dentro de un mercado actualmente dominado por una sola compañía".

Se estima que la alianza Yahoo-Microsoft acumulará aproximadamente un 28 % de las búsquedas en Internet realizadas en Estados Unidos. Menos de la mitad de la cuota de mercado del 65 % que actualmente controla Google.

Por: José Manuel Alarcon | Wednesday, July 29, 2009 10:44:07 PM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Mundo TIC


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Este me lo ha enviado hoy un alumno y amigo de campusMVP que se acordó de nosotros, los galleguiños y me ha parecido fantástico :-))

¡Gracias Julio!

Por: José Manuel Alarcon | Tuesday, July 28, 2009 8:16:51 PM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Off-Topic


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Hoy me he estado volviendo loco con Visual Studio 2008 SP1. Resulta que necesitaba hacer capturas de pantalla de la barra de propiedades, para lo cual la desacoplaba dellateral, donde la suelo tener, y hacía la captura. Luego la volvía a poner la barra en su sitio.

Bien, nada más hacer eso, si se me ocurría ejecutar la aplicación con F5: ¡crassss! cuelgue miserable de Visual Studio y el ordenador medio colgado (casi no me dejaba sacar ni el administrador de tareas para matarlo) :-((

Al principio no lo asocié a lo de desacoplar la ventana pero luego me di cuenta de que era claramente por eso. Así qeu buscando, buscando llegué a este artículo de la Knowledge Base de Microsoft.

Resulta que hay un bug en el Service Pack 1 de Visual Studio que puede hacer que cuando desacoplas ventanas y las vuelves a coplar algo vaya mal y se te cuelgue el entorno (y de paso casi el sistema).

Desde el enlace anterior te puedes bajar el parche que te proporcionan "por el buen rollito" pero del cual no se responsabilizan, es decir, no es un fix soportado oficialmente pero dicen que lo soluciona.

Tarda alrededor de media vida en instalarse... :-(

...pero parece que arregla el problema :-)

Yo tengo en mi equipo todo instalado en inglés, así que no puedo decirte si funcionará también con la versión en Español del entorno. Si alguien lo prueba en otro idioma y es tan amable, que deje un comentario aquí para los demás. Gracias.

Espero que a alguien le pueda resultar útil.

Por: José Manuel Alarcon | Monday, July 27, 2009 9:04:43 PM (Hora de verano romance, UTC+02:00)  #    Comments [1] - Trackback
Tags: Visual Studio


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Soy fan de esos pequeños detalles de calidad que muchas veces pasan inadvertidos pero que, una vez descubiertos, no puedes vivir sin ellos.

En este caso me gustaría hablar de una nueva característica del depurador de Visual Studio 2010 que me resulta muy útil y que echo de menos cuando tengo que volver a versiones anteriores: las inspecciones/watches flotantes.

Quizá no lo hayas notado, pero cuando te colocas encima de una variable o de una expresión cualquiera en el código mientras estás depurando, en la habitual ventanita flotante que te permite inspeccionar las variables y los objetos verás una especie de cuadrito amarillo a la derecha,como en la figura siguiente (por cierto, depurando JavaScript, o sea que funciona con todos los lenguajes):

Si lo pulsas verás que la ventana flotante se convierte en el típico Post-it que se queda visible de forma permanente, y puedes arrastrar a donde queiras. De este modo puedes tener tus objetos de interés siempre visibles, de manera mucho más cómoda que añadiendo una simple inspección a la lista de inspecciones (watch list).

Además tenemos otras ventas ya que nos permite añadir notas debajo para no olvidarnos de cosas importantes relacioandas con cada inspección, así como modificar los valores de las variables y propiedades, cambio que se ve reflejado de inmediato  en el programa que estamos depurando:

Ya sabes, si no los habías visto no pierdas tiempo y empieza a sacarles partido :-)

Por: José Manuel Alarcon | Saturday, July 25, 2009 10:40:41 AM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Programación | Visual Studio


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

JavaScript es un lenguaje que, cuatos más años pasan, más de moda está. En los tiempos que corren, con las aplicaciones AJAX campando a sus anchas por todas partes está más presente que nunca, así que no viene mal un truco de vez en cuando (y pienso que en los próximos meses escribiré aún más sobre el tema).

Hoy me he acordado del operador triple-igual o ===. Sí, estás leyendo bien, tres iguales seguidos. No contentos con el doble igual típico de C, C#, Java y otros lenguajes, también tenemos el triple. Este es un operador muy poco conocido en el lenguaje JavaScript y básicamente sirve para comparar la igualdad de dos objetos sin forzar la conversión automática de tipos.

Es decir, que para que devuelve true los dos objetos además de representar el mismo valor deberán ser exactamente del mismo tipo subyacente.

Así por ejemplo, vamos a comparar el == y el === con varios ejemplos:

1 == "1" --> true
1 === "1" --> false (son iguales pero uno es un número y el otro una cadena)
-1 == true --> true
1 == true --> true (tanto el -1 como el 1 se consideran equivalentes a un verdadero cuando se tratan como booleanos)
-1 === true --> false
1 === true --> false
1.0 == 1 --> true
1.0 === 1 --> true también ¡Ojo! JavaScript no distingue subtipos entre los números por lo que ambos son numéricos y por lo tanto del mismo tipo.

Espero que quede claro con los ejemplos. Se trata de un operador muy útil en algunas circunstancias.

Por: José Manuel Alarcon | Tuesday, July 21, 2009 9:05:15 PM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: JavaScript


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

El AJAX Control Toolkit nos permite añadir más de 30 controles a nuestras aplicaicones Web para mejorar enormemente su interfaz de usuario. Tenemos desde simples mejoras estéticas como sombras, diálogos o validaciones mejoradas hasta complejos controles como un editor HTML o animaciones.

Para añadirlo a nuestro Visual Studio sólo hay que crear un nuevo grupo en la barra de herramientas y usar la opción "Elegir elementos" (Choose Items si eres como yo y usas siempre la versión en inglés) para seleccionar la DLL del Toolkit y que los controles estén disponibles en VS:

El problema es que en Visual Studio 2010, al pulsar "Browse" y seleccionar la DLL del Toolkit se produce un error y no deja cargar los controles:

"Could not load file or assembly 'file:///C:\AjaxControlToolkit\AjaxControlToolkit.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)"

El motivo es el tratamiento especial que hace la versión 4.0 de .NET de los ensamblados bajados de Internet. El sistema operativo marca con un indicador especial a los ensamblados descargados de cualquier recurso remoto (Internet o una carpeta compartida en la red local). De este modo pueden ser reconocidos como posibles amenazas de seguridad al proceder, a priori, de un origen no confiable como es Internet. El sistema operativo los trata de una forma diferente debido a esto aunque los tengamos copiados ya en una carpeta local. Sin embargo .NET en sus versiones anteriores a la 4.0 hacía caso omiso de esta información sobre el origen y al estar ubicados en local los trataba como ensamblados confiables (por eso no te falla en VS2008 o anterior). Como mejora de seguridad en .NET 4.0 se tiene en cuenta esta particularidad y limita la capacidad de todos estos .exe o .dll que se descarguen directamente o dentro de un ZIP desde una ubicación remota. Por este motivo la DLL del AJAX Control Toolkit no es capaz de cargarse en el entorno de Visual Studio.

Para solucionarlo lo que tenemos que hacer es desbloquear su funcionalidad. Para ello localiza la DLL del toolkit en tu disco duro y en sus propiedades verás un botón "Desbloquear" que sirve precisamente para esto (la captura la he hecho en Windows 7 RC):

Necesitarás permisos de administrador para que el botón funcione (si no, le darás y creerás que ha funcionado pero no es cierto), así que si estás en una carpeta de sistema (como por ejemplo la de Archivos de Programa) mueve antes la DLL a otro lugar, cambia este atributo y devuélvela a su sitio original.

Ahora repite la operación anterior y verás como el problema desaparece y los controles se incorporan a tu barra de herramientas.

Enla actual versión Beta de Visual Studio 2010 no funciona la integración con el entorno de estos controles (al menos en el mío no), de modo que no aparece el diálogo de asociar el extensor con un control que tengas seleccionado, como en VS2008. Es de suponer que estará arreglado en la versión definitiva.

¡Espero que te sea útil!

Por: José Manuel Alarcon | Wednesday, July 15, 2009 8:00:42 PM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: AJAX


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Windows 7 mola mucho. Desde las primeras betas internas, no disponibles para el público, ya se le veía que no tenía nada que ver con versiones anteriores (y sigo diciendo que Vista mola también y que a pesar de algunos de los problemas que ha tenido es el mejor que SO que había hecho MS hasta que salió Win7).

Al grano. Una de las cosas que primero llama la atención, claro está, es la nueva interfaz de usuario. Lo que no todo el mundo sabe es que además de ser bonita también es muy útil. Y una de las caratcerísticas más útiles es la de la nueva gestión de ventanas.

Si arrastras una ventana hacia la parte superior de la pantalla se maximiza. Si le haces doble click sobre el borde inferior o superior de la misma se maximiza pero en vertical sólo. Puedes conseguir lo mismo con las teclas Windows+Flecha arriba y Windows+ Flecha abajo para maximiizar/restaurar y Windows+Mays+Flecha Arriba y Windows+Mays+Flecha Abajo, para maximizar restaurar en vertical.

Un efecto simpático es que si agarras una ventana por su barra de título y la meneas de un lado a otro todas las demás ventanas se minimizan y haciéndolo de nuevo se restauran a sus anterior posiciones (puedes conseguir lo mismo pulsando Windows + Inicio)

Algo mucho más útil es la posibilidad de acoplar ventanas a los laterales. Por ejemplo, si estás comparando dos documentos, o si necesitas trabajar con una documentación en una ventana mientras escribes en otra, o si programas con Visual Studio 2010 y tienes en una ventana flotante el código de una página y en la otra la vista previa :-) Para conseguirlo sólo tienes que arrastrar la ventana pegándola a uno de los bordes y se acoplará a él. Arrastra la otra al otro borde y se acoplará de forma que entre las dos se repartan la pantalla a medias para trabajar. Realmente útil sobre todo en los monitores panorámicos omnipresentes hoy en día. Puedes conseguir el mismo efecto en lugar de arrastrando las ventanas, usando las teclas rápidas: Windows+Flecha Derecha y Windows+Flecha Izquierda.

Finalmente, si eres de los que comoa mi le gusta trabajar con dos monitores, puedes pasar rápidamente una ventana de un monitor a otro con tan sólo pulsar las combinaciones de teclas Windows+Mays+Flecha izquierda y Windows+Mays+Flecha derecha.

Lo que yo me pregunto es: ¿para cuando una gestión multiescritorio nativa como la que tienen las X en Linux sin tener que recurrir a programas de terceros? ¿Tan complicado es incluir el soporte el S.O.? :-(

Espero que te resulte útil.

Por: José Manuel Alarcon | Tuesday, July 14, 2009 8:32:19 AM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Sistemas operativos


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Desde hace unas horas está ya disponible para descarga la versión definitiva de Silverlight 3.0. Esta versión viene cargada de nuevas e interesantes características: mejoras en streaming, soporte para codecs externos, sketchflow para prototipado visual y rápido de interfaces, gráficos en perspectiva 3D, soporte para skins, nuevos controles avanzados y funcionamiento fuera del navegador entre otras cosas.

Además, al mismo tiempo, se han liberado también las "Silverlight 3 Tools for Visual Studio 2008 SP1". Se trata de una extensión gratuita para Visual Studio 2008 SP1 que habilita el desarrollo en la nueva plataforma.

La descarga incluye entre otras cosas:

· Silverlight 3 developer runtime
· Silverlight 3 software development kit
· Plantillas de proyecto para Visual Basic y C#
· Intellisense y generadores de código para XAML
· Depuración de aplicaciones Silverlight 3.0
· Depuración remota de aplicaciones Silverlight ubicadas en Mac
· Plantillas WCF
· Soporte para Team Build y build desde línea de comandos
· Soporte para aplicaciones Silverliht 3.0 de tipo "Out-of-Browser"

En campusMVP ya estamos ultimando nuestro nuevo curso de Silverlight 3.0, que estará disponible a la vuelta de las vacaciones :-)

Por: José Manuel Alarcon | Friday, July 10, 2009 8:54:36 AM (Hora de verano romance, UTC+02:00)  #    Comments [0] - Trackback
Tags: Silverlight


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Impresionante vídeo que reproduce la visión para dentro de unos años de Microsoft. Dura unos cinco minutos y merece la pena aguantar todo el tiempo. Ojalá la mitad de lo que se muestra ahí llegue a producirse, y ojalá algunas de esas cosas (como el papel digital alucinante que se ve) llegue muy pronto:



Pulsa sobre la imagen para verlo

 

Por: José Manuel Alarcon | Monday, July 06, 2009 6:02:32 PM (Hora de verano romance, UTC+02:00)  #    Comments [2] - Trackback
Tags: Mundo TIC


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner

Este es uno de los problemas/bugs más raros con los que me he topado en años, y puede llegar a ser desesperante. Si has llegado aquí a través de una búsqueda de Google porque tienes el problema que indico en el título del post, estoy seguro de que me vas a dejar una nota de agradecimiento por el consejo :-)

Hace unos días hicimos una nueva plantilla estética para un cliente de nuestra plataforma de e-Learning, SELF. La plataforma tiene un sistema muy potente de plantillas estéticas que permite personalizar mucho la estética y parte de la funcionalidad de la interfaz. Se pueden asociar plantillas a los diferentes campus (entornos cerrados de formación) y también se pueden asignar muchas plantillas/fachadas diferentes a cada campus de forma que se pueda acceder con aspectos diferentes para cada cliente al mismo campus a través de diferentes URLs o directorios virtuales.

Una de estas plantillas, preciosa por cierto, provocaba un extraño efecto sobre todas y cada una de las páginas de la plataforma: se enviaban dos veces. Daba igual que pulsaras sobre un enñace, enviaras un formulario o simplemente llamaras a una página desde la barra de direcciones del navegador: TODAS las páginas se cargaban dos veces. Lo peor del asunto es que, cuando se enviaba un formlario, el primer envío del mismo era normal, pero el segundo y misterioso de ellos, se enviaba sin valor alguno, por lo que se producían excepciones constantemente debido a falta de los parámetros apropiados.

Esta doble petición de páginas no es muy evidente porque se suceden de forma rapidísima. De hecho no nos dimos cuenta de que esto era lo que estaba pasando hasta que analizamos el tráfico entre el navegador y el servidor usando Fiddler. Con esta herramienta detectamos que se estaba produciendo este doble envío de las páginas, lo que fué un avance, pero por más que revisábamos el código del servidor y las cabeceras no veíamos nada que pudiera estar provocándolo.

Cambiando la plantilla no pasaba, por lo que era evidente que había algo en ésta que lo estaba provocando. ¿Pero el qué? No había script con código de navegación, no había directivas de redirección, los archivos auxiliares (CSS, imágenes, etc...) existían todos por lo que tampoco era nuestra página de gestión de errores 404 la que podía estar interfiriendo...

?¿?¿?¿?

La solución

Tras analizar a fondo el código HTML de la página a ver qué encontrábamos vimos lo siguiente en una tabla:

<table border="0" cellpadding="5" cellspacing="0" background="#EFEFEF" width="100%">

¿Ves algo raro en ella?

Nosotros al principio tampoco. El fallo está en el atributo para establecer el color de fondo. El atributo background se usa para establecer la imagen de fondo de la tabla, pero no el color de fondo. Resulta que todos los navegadores importantes tienen un extraño comportamiento con esta etiqueta y es que cuando se introduce algo en ella que no es la ruta de una imagen provoca que se solicite nuevamente la página al servidor. Alucinante. Pasa tanto en Internet Explorer (cualquier versión, incluso la 8.0) y en Firefox (lo mismo), y no lo probamos en otros pero seguramente pasará también.

La solución fué fácil: utilizar el atributo correcto para el color de fondo, bgcolor.

Pero claro, para llegar a aislar el problema y llegar a esta conclusión tuvimos que perder varias horas ya que la plantilla tenía muchísimas líneas de código pues era bastante compleja.

Esta es una de esas cosas raras de narices que aprendes con la experiencia y que no puedes encontrar en un curso o un libro :-(

Espero que leer este post te ahorre horas de frustración :-)

Por: José Manuel Alarcon | Thursday, July 02, 2009 8:47:22 PM (Hora de verano romance, UTC+02:00)  #    Comments [1] - Trackback
Tags: ASP.NET | Programación


Sígueme en:

:: Twitter JM Alarcón: tecnología, marketing, este blog y frikadas varias
:: Twitter campusMVP: los mejores recursos sobre tecnología Microsoft: trucos, artículos, noticias, vídeos...
:: Facebook campusMVP: los mismos mejores recursos pero en directamente en Facebook.
:: Boletín campusMVP Nuestra publicación electrónica, una vez al mes en tu buzón de correo.
 
Banner
Copyright © 2010 José Manuel Alarcón Aguín. All rights reserved.