jueves, 25 de marzo de 2010

problemas al acceder a las URL de acceso a archivos en aplicaciones de ASPX.NET

Estuve realizando una aplicación web en donde necesite acceder a una imagen y borrarla con su url utilizando System.IO,

especificamente lo que hace el sistema es insertar imagenes y si no me gusta pues la busca, cargo la nueva y borro la actual, es un procedimiento muy simple pero de gran ayuda para manipulación de images, en la mayoria de ejemplos del MSDN nos da esta sentencia para ejecutar la eliminación de la imagen o cualquier tipo de archivo:

if (System.IO.File.Exists(@"c:/user/app_web/images/file1.jpg"))
{
aqui van el procedimiento de eliminación
}

pero que es lo que sucede que nosostros almacenamos las images con la siguiente url:

"~/images/file1.jpg"

y para mostrar la imagen lo único que hacemos es bajamos de la búsqueda esta dirección y la cargamos de esta forma:
images.ImageUrl = _clase_intanciada.constructor.url_image, que equivale a "~/images/file1.jpg" y se carga sin problema nuestra imagen.

el problema lo encontre cuando bajaba esta url y la aplicaba en la sentencia para eliminar la imagen:


//bajamos la variable del url de memoria
url_delete = viewstate["url_image"].toString();

//procedimiento para eliminar
if (System.IO.File.Exists(@url_delte))
{
try
{
}
catch
{
}
}

entonces este procedimiento me daba un error, me saltaba y haciendole un seguimiento con un punto de quiebre me di cuenta que el error decia "No se encuentra la dirección ~/images/file1.jpg".

Al final me di con la respuesta y descubri que existe una directiva que permite instanciar la ruta del servidor y convierte nuestra dirección de tipo "~" en la ruta exacta donde esta publicada nuestra aplicación o proyecto.

La directiva se declara de esta forma
String nombre_cualquiera = Server.MapPath("~/images/file1.jpg");

El ejemplo resuelto queda de esta forma

//declaramos la directiva
string rootpath = server.MapPath(url_delete)

//proceso de eliminación
if (System.IO.File.Exists(@rootpath))
{
}

Listo espero que hayas entendido este ejemplo práctico para acceder a los archivos almacenados en ficheros en el servidor, aplicacion web.

fileUpload no funciona con updatepanel ASPX.NET

A quien no le ah pasado que mientras desarrollamos una aplicación web en ASPX.NET nos toca, subir un archivo, imagen, etc... existen muchas maneras de hacerlo pero la forma base es utilizando un fileupload que viene en las herramientas de Visual Studio Team System en app WEB.

Hasta aqui no tenemos mayor problema, el codigo para mover la imagen, archivo se basa en una libreria llamada System.IO la cual copia el file en un directorio en el servidor o en el caso antes de ser publicado, dentro de una carpeta en nuestro proyecto.

el problema inicia cuando usamos una master page con un script manager, es decir que nuestras aplicaciones se ejecutan con scripts, y ya en forma mas profesional usamos los updatepanels para evitar que se actualice cada vez nuestra página web cuando realizamos cambios como seleccionar otros valores de un dropdownlist, en fin.

en la captura podemos ver el codigo como se implementa la utilización de un fileupload dentro del update panel

ahora que sucede seleccionamos un archivo, le damos cargar y nos devuelve un error diciendo "Instancia hace referencia a un objeto no establecido" u otros mensajes dependiendiendo del tipo de método de subida estemos usando.

La respuesta a este problema es que los UPDATEPANEL's no permiten que el fileupload cargue el archivo, ya que para realizar esta acción se necesita hacer un refrescamiento de la página para copiar el archivo en el servidor.

Navegando por internet me enconte con muchas soluciones pero la mayoria no servia, pues enconte algo muy util y que funciona 100% en mi aplicación.

Lo que debeis hacer es colocar una exepción dentro de un trigger con el nombre del boton que esta ejecutando el proceso de subida, en donde obligamos al updatepanel a realizar un refrescamiento solo en la zona de upload sin afectar a los demás registros que esten antes o después del FILEUPLOAD.

El ejemplo implementado lo podes mirar en la captura a continuación.

Espero que tu puedas resolver este problema que a mi me toco vivir, y ahora ya sabemos como arreglarlo...

lunes, 1 de marzo de 2010

Experiencias con Windows Server 2008 R2

Bienvenidos a otro aporte más de .NET Geek's Microsoft en esta oportunidad les voy a hablar acerca de mi experiencia al momento de preparar un Servidor de aplicaciones con IIS 7 de Windows Server 20008 R2 en donde debia instalar SQL Server 2008 x64 y Visual Studio 2008 Team System x64 para publicar mis proyectos realizados en ASPX.

Requerimientos para un correcto funcionamiento de Windows Server 2008 R2:

  • 45GB de disco duro disponible
  • 4 GB de memoria RAM
  • Procesador core 2 duo x64

Ahora les explico el por que de cada requerimiento.

->>Se recomienda 45GB de Disco duro por que el instalador de Windows Server 2008 R2 pesa 4GB pero al momento de instalar y levantar todas las características y funciones ocupa 13GB y el uso del micro es de 650mb.

->>Usamos 4GB de RAM para poder activar el Tema de Windows 7 en donde se aplican transparencia y para el mejor rendimiento de nuestro servidor ya que manejos x64 bits.

->>El procesador debe ser con soporte x64 por razones ya mencionadas de la arquitectura de Windows Server 2008 R2.

Características nuevas en Windows Server 2008 R2:

  • Tenemos con en Windows 7 Aero Shaker para minimizar aplicaciones o maximizarlas
  • Manejamos transparencias y temas básicos y otros de alta resolución
  • Vista en miniatura de las ventanas abiertas
  • Posibilidad de maximizar las ventanas con tan solo arrastrarlas a la parte superior
  • en resumen es 90% similar a Windows 7 ultimate, Enterprise o Professional

una instalado como debe ser de conocimiento debemos levantar las funciones y carácterísticas para mi caso las primordiales fueron IIS 7 y Framework 3.5 x64 para poder instalar visual Studio 2008 Team System.

->> para los que tenemos procesador AMD Turion X2 64, debemos instalar el driver del controlador del micro debido a que tiende a recalentarse en mi caso la notebook, y no se instala SQL Server 2008. Una vez realizado lo anterior procedemos a instalar Visual Studio 2008 Team System. Insertamos el DVD de instalación de Visual Studio 2008 y como tiene soporte para x86 y x64 instala automaticamente la versión de 64 bits por que identifica que se esta usando Framework 3.5 x64, y todos los componentes que se instalan se van bajo esa arquitectura.

Cabe destacar que tiene un convertidor de app de x82 a x64 bits.

Después de instalar correctamente Visual Studio es requisito indispensable ahora instalar el Service Pack 1 de Visual Studio 2008 caso contrario no podremos instalar SQL Server 2008.


finalmente pero no menos importante vamos a instalar SQL Server 2008 x64 para eso debemos descargar la versión completa de MSDNAA que viene consigo soporte para 64 bits.

->>Antes de instalar debemos verificar los requisitos minimos, si todos son correctos pues no tendremos problemas durante la instalación, de alli es cuestión de seguir el asistente, seleccionar las características a instalarse y esperar que se realice de forma correcta.

->>finalmente debemos habilitar la autentificación por usuario en SQL server 2008, configurar el modo TCP/IP, detener el motor y volverlo a ejecutar y ya esta listo nuestro servidor con Visual Studio 2008 Team System y SQL Server 2008

domingo, 24 de enero de 2010

Virtualization Now, Virtualizar Aplicaciones con Windows Server 2008

Virtualization NOW



La virtualización no es algo reciente, ha sido utilizada durante décadas, la virtualización permite que varios terminales puedan operar con sistemas operativos distintos, obtener desde el servidor acceso al software que muchas veces no será compatible con el sistema base que posean los equipos clientes, es decir el ahorro de recursos, compatibilidad en las terminales tontas y en el servidor. De la misma forma existe un balance en la carga de recursos entre el servidor y el cliente. Las aplicaciones se instancian desde el server pero consumen recursos del cliente que son mínimos

Características

  • Manejo de Windows Server 2008 Hyper V que permite la virtualización de aplicaciones
  • Soporte multi usuario y dinámico
  • Aumento de las capacidades que tiene el terminal cliente
  • Soporte inmediato para clientes que requieran un programa que no esté en su terminal con un solo clic
  • disminuye la carga de los terminales para operar con mas agilidad

Tipos de Virtualización

  • Virtualización de aplicaciones: Con microsoft SoftGrid application Virtualization. Este concepto novedoso, donde se virtualiza, es el propio paquete de software que se ejecuta en una pc cliente, por ejemplo ejecutar Microsoft Office 2003 en Windows 7, todo este trabajo lo realiza desde el servidor, puede activar o desactivar aplicaciones de inmediato.
  • Virtualización de servidores: Se trata de una solución para la consolidación de servidores, ayudando a reducir consumo e incrementar el uso de recursos de hardware
  • Virtualización de presentación: Es decir, de que vemos en pantalla mediante Microsoft Terminal Services, permite incrementar el uso de los servidores como entornos aplicativos

Características Técnicas

Servidor

  • 2GB de memoria RAM mínimo, 4 GB recomendado
  • Soporte para x86 0 x64
  • Configuración WLAN o Wireless

Clientes

  • 512 de memoria RAM
  • Cualquier sistema operativo inclusive Open Source
  • Configuración WLAN o Wireless

Guía para virtualizar aplicaciones

Aqui te dejamos un exelente guía paso a paso para configuración y uso de la virtualización de aplicaciones en Windows Server 2008

Esperamos ser una guía para su desarrollo profesional, cualquier pregunta postearla en este blog.

sábado, 23 de enero de 2010

Información importante para la final nacional del Imagine Cup 2010


Un saludo cordial a todos los semifinalistas nacionales de todas las universidades de Ecuador, les dejo información valiosa para que se preparen de la mejor manera para el Imagine Cup Poland 2010
Video.
Como ya es de conocimiento de los semifinalistas se debera enviar un video a las oficinas de Microsoft y cargarlo en el Sky Drive del Adoption Program Manager Juan Jose Mena con fecha limite 7 de Abril 2010. el video tiene los siguientes aspectos:
  • El sistema no necesariamente debe estar terminado, basta con mostrar pantallas, simular como va funcionar es decir juega nuestra estrategia de Marketing para vender el producto
  • Podemos usar un par de diapositivas para explicar su funcionamiento, y proyectar videos si fuera necesario
  • No necesitamos mostrar codigo fuente eso no se califica en esta etapa
  • La seleccion para la final se hara en base a los videos enviados, a puerta cerrada con jurado totalmente diferente al que calificó los anteproyectos
  • El video se debe hacer en idioma natal en nuestro caso español
  • Los jueces no son solo Ingenieros de sistemas, si no personas de diseño, y demás que no solo consideran el funcionamiento si no el aporte que realizan a las personas
  • El video tendra una duración máxima de 20 minutos

Competidores

Para mayor seguridad de los equipos a utilizar en la final, se debera coordinar con anticipación para enviarlos a la ciudad sede de la final via DHL. El costo de movilización de los competidores para la final corre por Microsoft

Aspectos importantes:

  • A Polonia solo podran viajar los 4 finalistas a excepción del tutor
  • Si un integrante salio o se ausento en todo este periodo el equipo quedara conformado por los participantes que queden activos, en ningun caso podra ser suplantado por ninguna persona
  • Se recomienda prepararse en el idioma Ingles debio a que la final de Polonia se realiza en ese idioma, no se podra hablar español, no necesariamente debe ser fluido pero si lo necesario para poder defender su proyecto

La final Nacional

La ciudad sede de la final esta por definirse, no se hará en las Microsoft Ecuador, si no se buscara universidades no participantes o Municipios.

  • La fecha de la final será el 3 de Mayo debido a que se debe obtener las visas para los finalistas
  • La final será en el idioma natal "Español"
  • Se defendera el proyecto de acuerdo al orden obtenido previo sorteo
  • Se entregará un certificado a todos los semifinalistas por parte de Microsoft avalando su participación
  • En la final no se calificará la programación si no funcionalidad
  • Los jueces de la final será distintos a los de la selección de ante proyectos y a los de la selección de los videos finalistas

Esta es la información más relevantes acerca del Imagine Cup Poland 2010, a todos los participantes mucha suerte y es deber de todos dejar en alto el Nombre de Ecuador en Polonia...

lunes, 18 de enero de 2010

Ventajas de usar Windows 7 X64

Sean todos bienvenidos a esta publicación donde hablaremos de Windows 7 Ultimate x64.

Particularmente trabajo con Windows 7 x64 y este a roto todos los tabús como:

  • Problemas con controladores
  • Compatibilidad de aplicaciones x86
  • Consumo de recursos

Problemas con controladores. Inicialmente hablemos del gran problema de los controladores, ya es de conocimiento público que los sistemas de arquitecturas x64 tienen grandes problemas de compatibilidad y no existen drivers principalmente para la tarjeta de video. Esto se rompe con el uso de Windows 7 que viene con la mayoria de controladoras de tarjetas de video para notebooks, netbooks y PC Desktop. Los demás drivers los podemos conseguir en las páginas de fabricantes de nuestras maquinas en mi caso HP te da la opción de descargar controladores para Windows 7 x86 o x64 y estan todos los que necesita mi pc.

Generalmente los drivers que faltan despues de instalar Windows 7 son: los de lector de memorias 5 en 1, touch pad que no son mayor problema para conseguirlo aca les dejo el link de los usuarios de HP

Compatibilidad de aplicaciones x86. Este es otro mito que Windows 7 da por falso, la mayoria de aplicaciones de x86 corren sobre Windows 7 x64 sin mayor problema. Destaco que cuando instalamos estas aplicaciones se crea una carpeta llamada archivos de programas(x86) y tambien archivos de programas en donde se instalan solo aplicaciones x64.
Los programas que instale sin mayor complicación bajo arquitecturas x86 son:
  • Xampp 1.7.3
  • Adobe Dreamweaver CS3
  • Adobe PhotoShop CS3
  • Expression Studio 3
  • Flash Player
  • Visual Studio 2008
  • Adobe Reader 9

Consumo de recursos. Es verdad lo que muchos blogs dicen que si no se tiene mas de 3GB de memoria RAM no se nota la diferencia, esto es verdad, en el caso que tengas desde 4GB en adelante el rendimiento es mucho más efectivo, se nota en la velocidad de encendido, apagado, ejecución de procesos, transparencias y cosas propias de Windows 7.

Por ultimo como sugerencia, antes de migrar nuestro sistema a x64 consigamos los drivers para esta arquitectura, los programas básicos como Office 2010 Beta plus x64 y si son developers como yo pues SQL SERVER 2008 R2. Espero que esta información haya sido de ayuda para que rompan con el mito de que los sistemas X64 son incompatibles o tienen mayor consumo de recursos.

viernes, 8 de enero de 2010

Evento comunitario en el pueblo de "Belen" 2009

Al mando, organizacion y cordinacion del Profesor Lider Microsoft Ing. Leopoldo Pauta empredimos un gran reto, que se lleva a cabo año tras año en el canton "Nabon". El proyecto ah sido Bautizado como Belen que es el mismo nombre del pueblito que nos abrio sus puertas con mucho cariño.


El proyecto Belen engloba esfuerzo, dedicacion y sobre todo las ganas de alegrar a los niños cada año, el lema de este año fue "No hay mejor regalo que la sonrisa de un niño".

Durante los primeros dias del mes de Diciembre se emprendio la campaña para recaudar la mayor cantidad de viveres, juguetes y ropa, la meta cubrir con regalos a los 700 niños y personas de escasos recursos que viven en NABON.

El dia sabado 19 de Diciembre, se empezo con el proceso de enfundamiento de galletas y viveres con el apoyo de las señoritas novato de las diferentes carreras de la universidad, miembros de la comunidad .NET Geek's Microsoft y demas alumnos.
El Martes 22 de Diciembre nos encontramos en la oficina del Ing. Leopoldo Pauta a las 3h00 AM para embarcar todos los viveres recaudados, a las 4h30AM partimos hacia el Canton Nabon en donde nos esperarian los niños con bailes, poesias, procesiones y canticos navideños.
Al medio dia tuvimos un encuentro con todos los grupos que fueron al evento para compartir un almuerzo brindado por las autoridades de las escuelas que forman parte del pueblo de Belen, luego empezo un show artistico, juegos, musica en vivo y el gran baile popular. Finalmente se procedio a la entrega de los juguetes y viveres a los niños y personas de escasos recursos.
Finalmente la foto del recuerdo de todos los que fuimos parte de esta gran iniciativa, queremos agradecer y felicitar la labor del Ing. Leopoldo Pauta, las señoritas novato 2009 de las diferentes carreras, a todos los que formamos parte de la comunidad .NET Geek's Microsoft, profesores y alumnos participantes.
Un caluroso abrazo a todos los niños que nos deleitaron con muchas actividades y un presente realizado por ellos mismo, les deseamos lo mejor en sus vidas. Que Dios vendiga a sus familias y que nos de el mismo entusiasmo para cada año disfrutar de la felicidad de aquellos seres que no tienen las mismas facilidades que nosotros pero que un dia nos daran la alegria de ser unos grandes profesionales. SUERTE Y GRACIAS PUEBLO DE BELEN...