Microsoft TouchWall
15 May 08 01:26 AM | csharp | 0 Comments   

Bueno antes de nada lo primero que quiero decir es:

¡¡QUIERO UNOOOOOOOOOOOOO!!

Después de ver el vídeo seguro que vosotros también queréis uno Big Smile.

Este es otro prototipo de pantallas multitactil en las que está investigando Microsoft. Es la misma idea que Surface pero en la pared y menos avanzado (por lo menos por lo que he visto en el video).

Surface se valía de las cámaras que contiene la mesa para detectar las posiciones y además interactuaba con objetos como móviles o PDAs.

TouchWall es un software llamado Plex que va sobre Windows Vista y detecta los movimientos mediante una serie de láseres y una cámara de infrarrojos.

A ver cuando dejan de ponernos los dientes largos Big Smile, bueno a lo mejor al final me tengo que hacer uno yo mismo Stick out tongue

Saludetes Cool

Mono's Winforms 2.0 is now API Complete
14 May 08 10:10 PM | csharp | 0 Comments   

Este título es el que os podéis encontrar nada más llegar al blog de Miguel de Icaza. De esta manera ya tenemos completo WinForms 2.0 y podremos ejecutar nuestras aplicaciones hechas con esta librería además de en Windows, en Linux y Mac OS.

Han tardado 4 años, empezaron en julio de 2004, tiene 12,776 métodos y 115000 líneas de código.

En mi opinión una gran noticia, !! Felicidades a todo el equipo del proyecto MONO !!

 Referencias:

  • Tirania, el blog de Miguel de Icaza
  • Code Monkey, Jonathan Pobst componente del equipo de desarrollo de WinForms en MONO

Saludetes Cool

Filed under: , ,
Trabajo en el equipo de desarrollo del .NET Framework
05 May 08 12:03 AM | csharp | 0 Comments   

Navegando por la red me encuentro con un post de Brad Abrams, en el que comenta que están buscando gente para entrar a desarrollar algunas partes del Framework.

El que quiera cambio de aires ya sabe donde puede probar Big Smile

El blog con la noticia lo tenéis aquí

 

Saludetes Cool

Filed under: ,
Ejecutar dos proyectos a la vez o una aplicación externa
16 April 08 12:40 AM | csharp | 0 Comments   

Hoy revisando el foro de los DotNetClubs, me he encontrado con una pregunta de un compañero de Madrid. La cuestión no es muy difícil ni rebuscada pero suelen estas cosas en las que más se pierde el tiempo cuando estas programando y como seguro si una persona lo ha preguntado hay por lo menos otras 20 que les pasa lo mismo he decidido dejarlo por aquí apuntado y que el dihos Google lo indexe Big Smile.

Básicamente lo que se preguntaba era como poder arrancar dos ejecutables a la vez al arrancar la primera o bien ejecutarla en un momento determinado.

Bueno pues bien tal como yo lo veo existen dos posibilidades, por un lado tienes tus dos proyectos dentro de la misma solución en el Visual Studio, en este caso deberíamos agregar una referencia en el proyecto que se encuentre establecido como principal del segundo proyecto. Esto se haría de la siguiente manera:

 

image

Pulsamos sobre References (referencias) con el botón derecho y pulsamos en Add references (Añadir referencias),

image

luego aparece una ventana en la que iremos a la pestaña Projects (Proyectos) donde vemos los proyectos contenidos en la solución,

image

Finalmente en la primera aplicación donde más queramos (en algún evento de botón, timer o cualquier sitio) nos creamos un objeto del tipo del segundo proyecto y ya podemos utilizar ese segundo programa a la vez que el primero. En mi caso los proyectos son de WPF y las dos líneas de código son las siguientes:

WpfApplication2.Window1 segundoproyecto = new WpfApplication2.Window1();
segundoproyecto.Show();

Esto nos viene bien si los programas que queremos ejecutar a la vez las estamos programando nosotros y están dentro de la misma solución, pero si lo que queremos hacer es ejecutar una aplicación completamente externa como un comando del sistema o ejecutar algún archivo como un pdf, word o un excel la instrucción que deberíamos utilizar es la siguiente:

System.Diagnostics.Process.Start(path);

donde path sería la ubicación del archivo o programa.

Bueno, esto es todo por hoy.

SaludetesCool

Jugando con videos en Expression Blend
06 March 08 10:15 AM | csharp | 0 Comments   

Hacía ya tiempo que no escribía nada en el blog y ya iba siendo hora de aportar algo a la comunidad de nuevo, aunque solo fuera un poquito.

Aprovechando el anuncio de la salida de la preview de Blend 2.5 quiero mostrar como reproducir un vídeo en WPF de una forma diferente a como lo hacemos normalmente con el Windows Media Player o con el VideoLan, lo vamos a mostrar inclinado sobre una ventana en 2D.

Normalmente cuando necesitamos hacer un reproductor multimedia muy rápidamente en Windows Forms, lo que hacemos es directamente agregar la dll del Windows Media Player.

Bueno pues en WPF la forma más rápida es agregar un componente que ya viene hecho denominado MediaElement.

image

Lo malo de este elemento es que solamente podemos ver el vídeo tal cual agregamos el componente a la ventana, es decir, una vez le hemos dado el tamaño adecuado no podemos girarlo, ni inclinarlo ni nada por el estilo, así que necesitamos una solución.

Para ir al siguiente paso hay un "pequeño" concepto que debemos conocer que son los brushes o brochas. Cuando vemos una aplicación en WPF toda ella está siendo pintada por brochas, las brochas pueden pintar desde simples colores sólidos, a gradientes e imágenes :D

Existe un tipo de brocha denominada VisualBrush que permite pintar el área que nosotros queremos de idéntica forma a como está en otro lugar de nuestra aplicación.

La manera de hacerlo es la siguiente, una vez tenemos en el diseñador agregado un componente MediaElement con su propiedad source inicializada (esto lo hacéis mediante los menús de la derecha y si no la veis arriba del todo tenéis un buscador, ponéis source, pulsáis enter y aparece), con el componente seleccionado os vais al menú Tools, luego a Make Brush Resource y en el menú que aparece pulsáis sobre Make Visual Brush Resource y le dais un nombre.

De esta manera ya tenemos una brocha para pintar el elemento que queramos.

Ahora podemos agregar un componente image a nuestra ventana, al cual giraremos e inclinaremos a nuestro antojo, pero para ello tenemos que convertirlo en un objeto 3D.

Con el objeto image seleccionado, pulsamos sobre Tools y luego en Make Image 3D

image

Nuestro objeto image cambia y se convierte en un objeto Viewport3D con varias secciones en su interior. Por medio objects and timeline seleccionamos el modelo (Model).

image

Mientras en el diseñador debemos ver un rectángulo con tres vectores en el centro.

image

Bueno pues tal cual hemos seleccionado Model nos vamos a sus propiedades y en Materials aparecen dos opciones Material y BackMaterial, que se refieren a las texturas que podemos dar al modelo, nosotros solo lo vamos a ver por la parte de delante así que pulsamos sobre Material, y en el menú que aparece pulsamos sobre Brush Resources.

image

Es la parte delimitada de rojo, luego en Local Brush Resources está la brocha que hemos creado anteriormente y que debemos seleccionar.

El diseñador debe tener un aspecto parecido a esto:

image

Si ejecutáis debe comenzar a reproducirse el vídeo que halláis indicado de forma automática tanto en el MediaElement como en el modelo 3D.

A continuación seleccionamos la herramienta Camera Orbit o directamente pulsamos "c", si pinchamos sobre el modelo vemos que podemos rotarlo y girarlo a nuestro antojo.

Veremos algo así:

image

Ahora si ejecutamos ya podemos ver la reproducción inclinada y girada.

image

Bueno de momento eso es todo por hoy, otro día más. :D

Saludetes

MSDN Reader
18 January 08 01:56 PM | csharp | 0 Comments   

Ya tenemos una nueva forma de estar al día en cuanto a las noticias que vienen de MSDN. Se trata de un Reader en WPF al estilo del que tiene por ejemplo el New York Times para leer las noticias y artículos que publican en la web de MSDN y MSDN Magazine.

Además podemos descargarnos el código y echarle un vistazo a la aplicación por dentro, todo un lujo.

image

Los enlaces os los dejo aquí:

- Instalador de MSDN Reader

- Código fuente de MSDN Reader 

 

Saludetes

Nueva versión de XNA :D
14 December 07 01:09 PM | csharp | 0 Comments   

Después de un periodo muy corto en fase beta, desde el 19 de noviembre hasta hoy, ya tenemos la segunda versión definitiva de XNA Game Studio.

Implementa muchas mejoras, la que a mí me parece más importante es la que permite el desarrollo de juego en red y multijugador. Pero bueno el resto de mejoras lo podéis ver aquí.

Si tengo tiempo este finde miro las mejoras y las comento; por cierto con la última versión se va a iniciar la versión 2008 del concurso Dream Build Play.

Bueno dejo los enlaces para que cacharreis si queréis:

Voy a seguir con el currele, :(

 

Saludetes

Filed under: , , ,
Expression Blend: creando un "Motion Path"
10 December 07 11:44 AM | csharp | 0 Comments   

Vamos a ver como podemos crear un "Motion Path" para un elemento de WPF con la herramienta de diseño Expression Blend.

Lo primero de todo arrancamos nuestro Expressión Blend, en mi caso es la versión 2, la preview de septiembre que podéis encontrar aquí.

image

Creamos un nuevo proyecto (Ctrl+Shift+N) y elegimos crear una aplicación para WPF, le damos un nombre y pulsamos sobre "OK".

Ahora lo que haremos será arrastrar un rectángulo sobre la ventana que estamos diseñando, con el rectángulo seleccionado pulsamos sobre propiedades y en la sección de brochas (brushes) reseteamos la propiedad Fill para que el relleno de la figura sea transparente.

image

image

Luego lo que tenemos que hacer es ir al menú Object, luego a Path y pulsamos en la opción Convert to Motion Path.

image 

Aparece una ventana donde debemos indicar el elemento que va a recorrer ese camino:

image

Elegimos el botón que teníamos agregado y automáticamente se coloca en el camino que hemos definido. Se crea una nueva línea de tiempo automáticamente, podemos pulsar sobre el play para ver el nuevo efecto.

Además por defecto el tiempo que tarda en recorrer el camino son 2 segundos, pero podemos editar esto a nuestro gusto buscando el elemento Motion Path del botón y alargamos o acortamos el tiempo que dura el recorrido.

image

También se pueden hacer Motion Path con otras figuras predefinidas o con líneas que dibujemos con el lápiz o la pluma.

La verdad es que es una forma fácil de animar un logo o crear un pequeño efecto en nuestra aplicación.

 

Saludetes

Filed under: , , , ,
Taller de ADO.NET y WinForms
21 November 07 08:15 PM | csharp | 0 Comments   

Pues eso, solo quería anunciar que mañana daré a las 20:00 tendrá lugar un pequeño taller de introducción a ADO.NET con windows forms dentro de las actividades que cada semana realiza el DotNetClub de Albacete. El que se quiera pasar será bienvenido.

El lugar es la Escuela Politécnica Superior de Albacete en el aula de Software 5 

 
Saludetes Cool

Crossposting from LaBloguera.net
Tips: Como resolver DNS
25 October 07 01:07 PM | csharp | 0 Comments   

Hace unos días tuve que probar una aplicación programada por mi (uff!!!Smile) para transmitir archivos a través de sockets en la empresa la empresa del cliente.

El caso es que cuando uno está comenzando a desarrollar un programeja y sobre todo si es novato o por lo menos más que muchos de los compañeros de bloguera (un saludete a todos), muchas veces no te paras a pensar en que luego hay que probarlo fuera de tu entorno de desarrollo.

Esta aplicación que había hecho yo funcionaba a las mil maravillas, dentro de la red del entorno de trabajo. Tu te ibas a cualquier pc, metías la ip de destino, enviar el archivo y "atacando que esto ya chisca" :D.

Pero cuando llegas a la empresa del cliente te acuerdas de que este no tiene ni idea de lo que hay montado en su lugar de trabajo (¡¡y eso que es suyo!!) y tu entonces te pones a preguntar cosas como:

  • · ¿Cual es la IP pública del router?
  • · ¿Es estática o dinámica?
  • · .......
  • · ....

y cosas por el estilo, lo cual te hace darte cuenta del tiempo que estás perdiendo con alguien al que todo le suena a chino. Por esto lo mejor es hacer las cosas no solo que funcionen bien sino también dejarlas lo más "machacadito" para ti y de esta manera ahorrar tiempo.

Además con esto de .NET cada día veo como se ahorra más y más tiempo, porque la soluciones a problemas cotidianos ya están creadas.

Mi programa solo necesitaba que le indicara la dirección web de la empresa, para ahorrarme problemas presentes y futuros. Y la solución se encuentra en cuatro líneas:

//lo primero

using System.Net:

//y luego en un botón de conectar por ejemplo colocamos esto

IPHostEntry IPHost = Dns.GetHostEntry(textBox1.Text);
IPAddress[] direcciones = IPHost.AddressList;
for (int x = 0; x < direcciones.Length; x++)
{
     textBox2.Text += direcciones[x];
}

 

Bueno pues nada más, ya veis que hacía bastante tiempo que no escribía.

 

Saludetes

Crossposting from LaBloguera.net
Me voy al TTT
04 October 07 12:57 PM | csharp | 0 Comments   

Pues eso mismo, que este viernes (mañana) me voy a Madrid al "Train the trainers", un evento interno de Microsoft al cual invitan a estudiantes de los clubs de .Net de España. Este año solamente podia ir una persona por club y después de "duras" discursiones y como los demás están un poco tirillas y yo estoy un poco más fornidoEmbarrassed, al final voy yo.

Lo que haremos será un maratón de charlas, en mi caso de desarrollo de software desde las 10:00 de la mañana hasta las 18:30 de la tarde, parando un poquito para comer y otro poquito para reunirnos los diferentes grupos de gente que vamos al evento, dotnetclubs, grupos de usuarios y MVPs, fundamentalmente para vernos las caras y tantear lo que se va a hacer durante el año.

Las charlas como siempre seguro que no defraudan a nadie, aquí os pongo la agenda del evento:

 09:00 – 10:00
Bienvenida y desayuno

10:00 – 10:40
Tejemanejes MSDN
David Salgado - Algonso Rodriquez

10:50-11:10
Estrella invitada
Oscar del Moral - Program Manager

11:10-12:00
Meigas…haberlas haylas   - ADO.NET Synch Services
Unai Zorrilla - Plain Concepts

12:00 - 12:15
Descanso

12:20 – 13:00
Codigo VIVO - LIVE Services for Developers
David Salgado - Developer Evangelist

13:00 - 14:00
Y se hizo la luz - Silverlight
Isabel Gómez - ISV Developer Advisor

14:00 – 15:00
Almuerzo

15:00 – 16:30
Sidemeeting Grupos de Usuarios y DotNetClubs

16:30 – 17:30
El oso azul
David Carmona - Developer Evangelist

17:30 - 18:30
Las 4 fantásticas
Chema Alonso - MVP de Seguridad y Ricardo Varela - MVP de C#

21:00 – 24:00
Cena

Al día siguiente vamos a salir todos a tiros, yo intentaré saldar viejas cuentas en la batalla de paintball que tendremos durante la mañana del sábado Cool. De esto a ver si me da tiempo a hacer fotos y a disparar al mismo tiempo Geeked.

Saludetes
 

Crossposting from LaBloguera.net
NetStumbler en Windows Vista, uffff!!!
29 September 07 01:27 PM | csharp | 0 Comments   

Esta semana pasada recibí directamente de Irlanda mi nueva máquina, la cual tiene instalado de serie el Windows Vista. Así que me he dedicado a pasar todas las aplicaciones para poder seguir enredando lo antes posible.

Uno de los programas que más utilizaba es NetStumbler, un detector de redes wifi que te permite ir tranquilamente por la calle detectando redes inalámbricas automáticamente (sin tener que actualizar) y en el caso de tener conectado un GPS, va guardando también las coordenadas con la red y su intensidad de señal. Vamos que el programa no tiene muchas funciones pero lo que hace lo hace muy bien. El problema viene con el cambio a Windows Vista, en el que tienes que ejecutarlo con permisos de administrador para que pueda detectar las redes.

En este último punto es en el que me he quedado yo porque no me detecta ningún punto de acceso y eso que con el visor de redes de Windows si que aparecen varias. Al que le pase lo mismo puede utilizar un programa que aunque a mí personalmente me gusta un poco menos, de momento me hace el servicio. Se llama Vistumbler, va por la versión 5.5 beta, también permite GPS y si sigue así seguro que se hace hueco en los PC´s de mucha gente.

También podemos utilizar la línea de comandos de Windows si necesitamos más información de lo normal sobre las redes que nos rodean, aunque claro de esta manera la información de cada AP no se actualiza sola como con los programas anteriores. Para hacer esto nos vamos a la línea de comandos de Windows y tecleamos netsh y pulsamos enter. Una vez que el promp del sistema cambia a “netsh>” tecleamos el siguiente comando: wlan show networks mode=bssid. Esta como digo es una manera estática de sacar la información de los punto de acceso que nos rodean pero que también nos puede venir bien en algún momento :D


Saludetes Cool

Crossposting from LaBloguera.net
D&#237;a del Programador
13 September 07 06:28 PM | csharp | 1 Comments   

Fiesta, fiesta, ale vamos a celebrar todos el día del programador. Bueno bien es cierto que me he enterado tarde, pero no quería dejar de señalar esta fecha que debe/tiene que ser tan señalada para nosotros. Os dejo lo que he encontrado en la wikipedia sobre el día del programador, y por supuesto la web oficial.

#region Wikipedia

El día doscientos cincuenta y seis de cada año se celebra el “Día del Programador”. Esta festividad tiene por motivo reconocer esfuerzo de los trabajadores de este ambiente tan atípico y estereotipado. La razón de que se celebre este día en particular proviene de que 256 es la cantidad de valores diferentes representables en un byte de datos (lo que equivale a 8 bits).

Se suele celebrar tradicionalmente organizando partidas de viejos juegos con computadora, haciendo pequeños programas que pueden considerarse como “inútiles” o de poca aplicación práctica, usando un nombre alusivo a tal evento en los distintos medios de chat, enviando mensajes de texto y emails con felicitaciones a amigos y/o conocidos que se trabajen, o estén estrechamente relacionados o involucrados en el mundillo y la jerga de los programadores. Algunas empresas del ramo acostumbran a realizar un brindis festivo.

El día número 256 de los años comunes es el 13 de septiembre, y en los años bisiestos resulta ser el 12 de septiembre.

 #endregion

 La web oficial la esta aquí., ya me contareis que tal os ha ido.

Saludetes Cool 

 

Crossposting from LaBloguera.net
Filed under: ,
Visual Studio 2008 y algo más
28 July 07 01:03 PM | csharp | 0 Comments   

Con la salida de la beta 2 de Visual Studio 2008, al cual conviene empezar a mirar seriamente ya que la versión final será muy parecida a esta, tenemos además varios documentos y hand on labs que han sido publicados para comenzar a jugar con el.

Por ejemplo en la parte que a mi más me atrae de esta versión, LINQ y C# 3.0 podemos leer 4 hand on labs:

Algunos ejemplos de LINQ:

Algunas de las novedades que trae Visual Studio 2008 son el poder crear aplicaciones para las distintas versiones de framework o el soporte para CSS y diseño web, estas últimas bastante esperadas por mucha gente.

Para descargaros el Visual Studio 2008 Beta 2 o su máquina virtual podéis visitar este enlace.

 

Saludetes y buen finde Geeked
 

Filed under: , , ,
Dibujando texto en XNA
28 July 07 12:22 PM | csharp | 0 Comments   

Lo acabo probar y es fantástico lo fácil que es dibujar texto en XNA, aunque como he comprobado después hay gente que ya se ha currado sus clases para dibujar texto, pero claro con muchos más añadidos que los que trae el XNA Framework.

Bueno vamos al caso, para dibujar nuestro texto tenemos que añadir una nueva clase .spritefont, clickando con el botón derecho sobre nuestro proyecto pulsamos en Agregar --> Nuevo elemento, en la nueva ventana buscamos un icono de una letra A con un mando de juegos

 

le damos un nombre y agregamos al proyecto.

Si hacemos doble click sobre el archivo nos aparece un archivo XML donde tenemos que concretar la descripción del tipo de letra que vamos a utilizar, nombre, tamaño, espaciado, etc. Todo esto lo leerá el ContentPipeline para cargarlo en el juego.

En mi caso solo he cambiado el nombre de la fuente por "verdana" y el tamaño por "30".

Ahora volvemos a la clase principal y agregamos los siguientes objetos, un SpriteBach, como ya sabréis nos ayuda a manejar las texturas, un SpriteFont para lo que vamos a escribir y un vector de dos dimensiones para colocar el texto.

 

#region Using Statements

using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Storage;

#endregion

namespace SpriteBach
{
        public class Game1 : Microsoft.Xna.Framework.Game
        {
                 GraphicsDeviceManager graphics;
                 ContentManager content;

                 SpriteBatch spritebatch;
                 SpriteFont verdana;
                 Vector2 vector=new Vector2(50, 50);

En la clase Inicialize construimos el SpriteBach y pasamos al ContentPipeline la fuente:

protected override void Initialize()
{
         spritebatch = new SpriteBatch(graphics.GraphicsDevice);
         verdana = content.Load<SpriteFont>("Fuente");
         base.Initialize();

}

Es tan sencillo como cuando pasamos sprites solo que en este caso el tipo es SpriteFont y el archivo se llama "Fuente", sin la extensión spritefont.

Ahora vamos al método Draw y dibujamos el texto:

protected override void Draw(GameTime gameTime)
{
          graphics.GraphicsDevice.Clear(Color.CornflowerBlue);

          spritebatch.Begin();

          spritebatch.DrawString(verdana, "La Bloguera.net", vector, Color.White);

          spritebatch.End();

          base.Draw(gameTime);
}

Pulsamos F5 y el resultado que obtenemos es este:

 

 

Pues nada hasta la próxima :P

Saludetes Cool

Filed under: , ,
More Posts Next page »