desarrolloMobile.NET Noticias

lunes, enero 29, 2007

January 2007 Community Technology Preview (CTP) & .NET Compact Framework 3.5

Pues sí, .NET Compact Framework se va a la versión 3.5, juntamente con Orcas y esta vez lo podremos descargar con el CTP de Enero del 2007.

Evidentemente no se trata de la versión definitiva, de hecho algunas características no estaran disponibles en este CTP pero sí iran apareciendo en próximas versiones.

Básicamente el desarrollo del nuevo .NET Compact Framework, se ha orientado a cuatro areas. Desde la implementación de LINQ pasando por la resolución de problemas de creación de aplicaciones en entornos distribuidos hasta la integración con Windows Communication Foundation.

Para más información visitad el blog del equipo de desarrollo de .NET Compact Framework.

martes, enero 23, 2007

System.Transactions Classes

El pasado Diciembre, dotNetManía publicó un artículo referente a la utilización de las clases de System.Transaction en .NET Framework 2.0 del cual tuve el placer de escribir. Para todos aquellos que han 'lidiado' con transacciones antes y ahora podreis ver una situación de lo que aporta .NET Framework 2.0 al respecto.

miércoles, noviembre 08, 2006

Nueva librería bluetooth para Windows XP

Acabo de publicar aqui, la librería (en .NET 1.1) que venía desarrollando para Windows Mobile pero esta vez para Windows XP SP1 y superior. Esta librería permite la manipulación y conexión mediante Bluetooth con otros dispositivos y está en fase de desarollo. La primera versión inicial es la 0.95.

La verdad es que la migración a XP no ha sido muy dura y como era de esperar, gracias a la gran cantidad de API's de Microsoft Bluetooth Stack, el desarrollo y el debug, evidentemente, ha sido más facil.

Estoy acabando un proyecto de Windows Forms que muestre las capacidades de la librería. En cuanto lo tenga pondré un pantallazo y lo 'colgaré'. También voy a tratar de pasarla a .NET 2.0 y para el año que viene poder colgar una librería GPS en .NET que estoy acabando.

De la misma forma he 'colgado' también la versión 0.93 para la plataforma Windows Mobile, para solucionar un par de bugs, y parece ser cada vez más estable. Entre los objetivos de está librería están la conexión con dispositivos manos libres y transferencia de ficheros, aún en desarrollo.

Si estais interesados en cualquier cosa o tenéis alguna sugerencia/crítica ya sabéis, ¡¡un saludo!!

martes, octubre 17, 2006

Conexión entre Visual Studio y dispositivos Windows CE sin ActiveSync

Probablemente en alguna ocasión a surgido la pregunta de si se puede conectar nuestro dispositivo Windows Mobile con el PC de desarrollo sin la necesidad de estar conectado por ActiveSync. Pues es posible realizando las operaciones de copia de archivos necesarios y la comprobación de la IP del dispositivo, tarea que hay que hacer una sola vez, y establecer la conexión de nuestra instancia de Visual Studio con el dispositivo así como la implantación de la seguridad, tarea que debe hacerse cada vez que queramos volver a conectar el dispositivo.

Observaciones
  • Lo he probado utilizando Visual Studio 2005.
  • El paso de copia de archivos la realicé con ActiveSync ( ¿¿ que estupidez no ?? ). En el enlace se habla de "copiar los archivos utilizando cualquier conexión establecida con el dispositivo", con Windows XP SP2, un dispositivo conectado sin ActiveSync es interpretado como un dispositivo USB y pedirá permiso para buscar el software asociado en la mayoría de los casos no sabrá instalarlo. Otra alaternativa es mediante Bluetooth, Irda, o copiando los archivos a una tarjeta de almacenamiento SD, MiniSD, MMC, etc.
  • Seguid lo pasos uno a uno y tened paciencia puesto que la ejecución de cMaccept.exe puede ser lenta. Al final, sin embargo, ¡¡siempre acaba conectando!!

Nuevo Airis T470


Airis entra en el mundo del smartphone con el modelo T470 basado en Windows Mobile 5.0. Sus características són:

  • Windows® Mobile® 5.0 for Smartphone
  • GSM/GPRS Tri-banda 900/1800/1900
  • Pantalla 1,9" TFT, 65.000 colores
  • 128 MB Flash ROM + 64 MB SDRAM
  • Slot para memoria T-flash(microSD)
  • Bluetooth v1.2 e infrarojos


jueves, septiembre 14, 2006

Peculiaridades del uso de menús en Smartphone


La utilización de menús en dispositivos Smartphone, donde la pantalla no es táctil y los controles de entrada (right and left keys) resultan como los principales ( y a veces únicos ) interfaces de entrada (junto a back key), resulta algo 'engorroso'. Para evitarlo, conozcamos las restricciones del uso de menús para Smartphone.

La primera restricción (bastante obvia) es que sólo pueden haber 2 menús principales, los que corresponden a las teclas de control izquierda (left softkey) y derecha (right softkey). Ésta última, la softfkey derecha, es la única que puede contener submenús, la de la izquierda no. Sin embargo Visual Studio en tiempo de diseño no alertará sobre el incumplimiento de alguna de las restricciones; en tiempo de ejecución, en el método InitializeComponent, emitirá una excepción del tipo NotSupportedException. La eliminación de las teclas de control izquierda o derecha en tiempo de ejecución no están permitidas aunque sí los submenús.

Ampliar más información.

viernes, septiembre 01, 2006

Tecnología Direct Push en Messaging and Security Features Pack

Quizás una de las características más importantes de Messaging and Security Feature Pack para Windows Mobile 5.0 sea la implantación de Direct Push Technology. Un dispositivo Windows Mobile 5.0 equipado con dicha tecnología al conectarse a un servido Exchange Server 2003 SP2, obtendrá prácticamente de manera inmediata el correo, tareas, citas del calendario sin pasar por 'terceras partes'.
Para los que queráis, existen actualizaciones para algunos dispositivos. Si además queréis trabajar con el emulador, las imágenes de Windows Mobile 5.0 con MSFP ya están disponibles.

¡A disfrutarlo!

PD: Para los que tengais PocketPC HP como yo, para las hx2100, hx2400, hx2700 podeis comprar las actualizaciones en iPAQ Choice.

martes, agosto 29, 2006

.NET Compact Framework 2.0 Service Pack 1 Patch

Despues de la aparición de la Beta 1 ya se ha echo ofical el lanzamiento del Service Pack 1 de .NET Compact Framework 2.0. Podeis descargaros la versión en español aqui. Las nuevas características así como los problemas solucionados los podeis encontrar aqui. Quizás la que más llame la atención y la que mas ansiamos es la compatibilidad con Windows Mobile 4.2 en la instalación del CAB.

ActiveSync 4.2 ya disponible

Ya está disponible la nueva versión de ActiveSync 4.2. Incorpora numerosas mejoras respecto a su predecesor sobre todo en cuanto a conectividad e interación con Microsoft Outlook.

jueves, julio 27, 2006

Mobile Client Software Factory – July 2006

Dentro del apartado de patterns & practices, Microsoft ofrece un conjunto de patrones de desarrollo para movilidad, Smartphone y Pocket PC, en la que incluye muchas de las nuevas características de .NET Compact Framework 2.0 como connectividad, multidimensionamiento de pantallas y seguridad, entre otras.

miércoles, julio 19, 2006

Nueva CTP de Windows Vista

Encontré en el blog de Tom Archer una tabla con todas las versiones Beta lanzadas hasta la fecha con sus correspondientes SDK, Extensiones para Visual Studio (incluyendo Orcas).

Además en www.seewindowsvista.com podran encontran videos de las futuras aplicaciones de WPF,WCF y WWF.

miércoles, junio 21, 2006

Mi Libreria


Acabo de publicar una nueva sección en desarrolloMobile.NET; se trata de una librería, inicialmente Bluetooth, para el desarrollo desde dispositivos móviles. Mi intención es ir añadiendo código para que pueda ser consultado en modo binario o en algunos casos a nivel de código con el propósito que sea de utilidad para aquellos que o bien estan empezando en el desarrollo de dispositivos móviles o bien desean saber más sobre un determinado tema. La primera piedra es una librería básica de acceso mediante Bluetooth (versión 0.90). Tengo varios frentes abiertos que me gustaría compartir y que trataré, en la medida de lo posible, ir enriqueciéndola.

jueves, mayo 25, 2006

Estableciendo alias para las referencias

Durante el desarrollo de un pequeño ejemplo en Visual Studio 2005, en el que participaban una ensamblado librería (DLL) y un ensamblado aplicación (EXE), me di cuenta de que existían dos clases de ambos proyectos que no sólo se llamaban igual sino que además el nombre del namespace eran idénticos.

Desde la aplicación EXE referencio la DLL, con lo que en lugar de cambiar nombres traté de instanciar la clase EXE desde globla::, pero sin embargo esto no tiene ningún sentido puesto que todas los namespaces proceden de global, con lo que el compilador me generaba un error.

La solución la encontré en los alias de los espacios de nombres. Cuando referencio la DLL, en las propiedades de referencia (reference properties) existe un propiedad, Alias, la cual implícitamente tiene valor global. Si asigno un alias determinado que distinga que se trata del espacio de nombres de la DLL el problema se soluciona. Lo único que hay que tener en cuenta es que al instanciar la clase del espacio de nombres indicado deberemos también indicar el alias.

//clase de la DLL
AliasDLL::ClasesGenericas.ClaseA a1 = new AliasDLL::ClasesGenericas.ClaseA();
//clase de la EXE
global::ClasesGenericas.ClaseA a2 = global::ClasesGenericas.ClaseA();

miércoles, mayo 10, 2006

Anuncio de la .NET COMPACT FRAMEWORK SP1 Beta1

El equipo de desarrollo de .NET CF anunció hace unos días la primera beta del SP1.

Las nuevas funcionalidades y modificaciones de bugs reportados las podeis encontrar en el enlace adjungo.

La descarga la encontrareis aqui.

miércoles, abril 19, 2006

Habilitar fuentes ClearType en Windows Mobile

Para habilitar o deshabilitar CleatType en Windows Mobile desde una aplicación basada en .NET Compact Framework, podemos utilizar la función SystemParametersInfo de la libreria coredll.dll. La declaración de ésta y para la utilización en un proyecto es de la siguiente manera:

int SPI_SETFONTSMOOTHING = 75;
int SPIF_UPDATEINIFILE = 1;
int SPIF_SENDWININICHANGE = 2;

[DllImport("coredll.dll")]
private extern static int SystemParametersInfo
(int uAction, int uParam, int lpvParam, int fuWinIni);

Dónde para establecer ClearType llamaremos a la función de esta manera:

SystemParametersInfo (SPI_SETFONTSMOOTHING,1,0,SPIF_SENDWININICHANGE SPIF_UPDATEINIFILE);

y para deshabilitarla cambiamos el 1 por un 0 en el parámetro uParam.

Pueden descargarse un programa de apenas 6 kb, para plataforma Windows Mobile Smartphone, MPX220 ClearType para MPX220, funcional para otros móviles, desarrollado con VS .NET 2003 aquí.

jueves, marzo 23, 2006

Error: No se puede establecer la conexión. Asegúrese de que el dispositivo esta fi­sicamente conectado al PC de desarrollo.

Si soy sincero he oido hablar de este error desde la aparición de Visual Studio .NET 2003, y con mayor frecuencia en las nuevas releases de ActiveSync, pero jamás me había encontrado, hasta hoy. Oí que se trataba de un bug y en algunos casos leí que reinstalando el Visual Studio .NET 2003 se solucionaba, sin embargo, me niego a perder una mañana entera reinstalando VS .NET y cía.

Pues bien encontré una solución sencilla. La encontré en un rincón de la web de Microsoft dedicado a FAQ's (cuyo enlace original había caducado) y por ello lo explico integramente aquí; por lo visto al deinstalar versiones anteriores de ActiveSync, elimina claves del registro necesarios para la implementación. La solución es sencilla y la tenemos en nuestro propio PC. En la carpeta [Archivos de programas]\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\WinCE Utilities\WinCE Proxy Ports Reg existe un fichero llamado ProxyPorts.reg el cual debemos ejecutar en nuestro PC. Seguidamente desconectamos el dispositivo de ActiveSync y lo volvemos a conectar y tratamos de implementar de nuevo. Si esto no fuera necesario hacemos un soft reset del dispositivo, aunque a mí no me ha hecho falta este último paso.

Pues nada, ¡espero que os sirva!

viernes, marzo 10, 2006

Nueva imagen de desarrolloMobile.NET

Hace justamente un año que empecé a desarrollar lo que pretendía ser un centro de recursos para desarrollo de dispositivos móviles en español en Internet. Durante este primer año he tratado de añadir enlaces y recursos para enriquecer el sitio Web, pero la falta de tiempo, la poca agilidad para la insercción de recursos no me permitieron darle el empuje que en un principio quise, además del pobre diseño que inicialmente presentaba.
Despues de plantearme el pasarlo a ASP.NET 2.0, idea que descarté ya que no soy ningún experto en ASP e implicaba empezar el proyecto desde zero para aprovecharlo al máximo, decidí darle mayor agilidad para la insercción de recursos y darle un diseño nuevo en ASP.NET 1.1 además de otras mejoras, gracias a la ayuda y consejos de mi colega del departamento de T.I. de MRW, Juan Carlos, un experto en desarrollo web.
Ahora que desarrolloMobile.NET posee un nuevo 'look' y un mecanismo que me permitirá más facilidad a la hora de añadir recursos, espero que el tiempo me brinde la oportunidad de hacer crecer el site.

lunes, febrero 20, 2006

Name mangling, __declspec(dllexport), P/Invoke y DUMPBIN, (consideraciones varias)


El objetivo de este post es explicar consideraciones a muy bajo nivel de las librerias nativas desarrolladas con VC++ que quieran ser utilizadas desde código administrado mediante P/Invoke.

C++ fue el primer lenguaje que soporto las funciones sobrecargadas en entornos Windows. El problema de tener varias funciones llamadas igual, diferenciándose por el número y/o tipo de parámetros fue resuelto por el compilador asignando a cada función nombres 'especiales' para que el 'lincador' pudiera diferenciarlas. Esta técnica es conocida como 'name mangling'.
El problema se presenta cuando se quiere acceder desde un proceso externo a una de las funciones nativas. Pese a que el nombre de la misma es conocida por nosotros, el 'name mangling' ha intervenido y probablemente el nombre de la función internamente sea remotamente distinta de la original, aunque la libreria funcione correctamente.
VC++ soluciona este inconveniente mediante la macro __declspec(dllexport), que debe ser declarada en todas las funciones que sean susceptibles de ser llamadas desde un proceso externo. Asímismo deberemos indicar en un archivo .def el nombre de la librería y las funciones que seran exportadas precedidas por la palabra EXPORTS, ejemplo:


LIBRARY CPP_LibreriaEjempo
EXPORTS
Funcion1
Metodo2


Para asegurarnos que las funciones serán 'visibles' desde el exterior una vez compilada la libreria o bien queramos ver qué funciones lo són para una determinada librería que no hemos desarrollado nosotros, visual Studio .NET ofrece una herramienta muy interesante DUMPBIN. DUMPBIN está disponible desde la consola de comandos de Visual Studio .NET y deberemos pasarle el parámetro /EXPORTS para que no muestre la funciones 'exportables'. En la imagen un ejemplo de DUMPBIN de la libreria user32.dll.

martes, febrero 14, 2006

Congreso mundial 3 GSM en Barcelon

Ayer lunes se inauguró el congreso mundial de telecomunicaciones 3GSM, el más importante del mundo, en Barcelona. Gracias a la revista en la que colaboro habitualmente, dotNetMania, tengo la oportunidad de asistir al recinto ferial así como a distintas charlas sobre los más destacados temas del sector.

La impresionante puesta en escena de las más importantes compañías de telecomunicaciones a nivel mundial hicieron las delicias de los allí presentes; también durante estos días directivos de la categoría de Steve Ballmer (Microsoft), Ed Zander (Motorola), Olli-Pekka Kallasvuo (Nokia), Mr Wang Jianzhou (China Mobile) o Shane Robison (HP), realizarán charlas (Keynotes) sobre temas de actualidad y también de futuro.

Todas las novedades del congreso se publicarán en el resumen que dotNetManía está preparando así como la entrevista a David Fernández (Director de la División de Negocio de Movilidad y Dispositivos embebidos de Microsoft Ibérica), de la que tengo el placer de realizar; en definitiva trataremos de acercar, a los que no puedan asistir al evento, las novedades allí presentadas.

martes, febrero 07, 2006

Control de errores emitidos por las API de Windows en contextos P/Invoke

Durante una llamada a una API de Windows (sea Win32 o WinCE), mediante P/Invoke, suele ser muy probable que el código de error que devuelve la propia API no pueda ser recuperado, es decir que de alguna manera P/Invoke olvida ese valor. Además, llamadas del tipo GetLastError() pueden llevar a confusiones ya que desde que se genera el error en la primera llamada P/Invoke hasta la llamada de GetLastError(), el CLR puede haber llamado a otras APIs variando de esta manera el resultado de la esta última función.

Afortunadamente, el atributo SetLastError de DllImport asignado el valor true (el valor por defecto es false), permite ‘recordar’ a P/Invoke el resultado del error para el proceso en ejecución. La manera de obtener dicho resultado es utilizando el método GetLastWin32Error() de la clase Marshal (System.Runtime.InteropServices ), el cual devolverá el código de error emitido por la API de Windows. A partir de ahí lanzar una excepción con el código de error puede ser una opción.

Veamos un ejemplo en C# con la llamada a RasHangUp*

[DllImport(“coredll.dll”,SetLastError = true)] //si se utiliza en Win32 la llamada en a"rasapi32.dll"

public static extern uint RasHangUp(uint pRasConn);

if (RasHangUp (uiRas) != 0)

{

//si RasHangUp no devuelve 0, algo ha ido mal

int error = Marshal.GetLastWin32Error();

string msg = String.Format(“Error {0}”,error);

thrown new ApplicationException(msg);

}

* Para que no quede duda RasHangUp cierra una conexión RAS. La implementación en Win32 se hace llamando a rasapi32.dll y es:

DWORD RasHangUp(
HRASCONN
hrasconn
);

La implementacion en WinCE se hace llamando a coredll.dll y es:

DWORD RasHangUp(
HRASCONN Session
);

El parámetro de la declaración DllImport de RasHangUp puede pasarse también como IntPtr, int o uint, dependiendo del cáculo de referéncias.

lunes, febrero 06, 2006

¡Fin de semana Indigo!

Seguiendo el blog de José Murillo, y a raiz de su artículo en dotNetMania, número 21, Primeros pasos con Windows Communitation Foundation, el viernes decidí instalarme de una vez por todas Indigo (con la Pre-Release WinFX Runtime Components CTP de Enero) y comenzar a hacer 'mis finitos' con el estupendo ejemplo de José en dotNetMania.
El primer atasco fue que el sistema operativo sobre el que instalaba era en Español, y la CTP de sólo funciona sobre plataformas en Inglés. Así que una vez instalado el sistema operativo y añadido IIS sobre el mismo seguí la guía de instalación que encontré en http://www.windowscommunication.net/. A parte de las cerca de 2 horas que tardé en bajarme el SDK de poco más de 1Gb, no tuve más problemas y comencé a tocar código con una versión Express de C#. En WindowsCommunication.net hay dos Labs (Lab1,Lab2):
The Fundamentals of Programming the Windows Communication Foundation
Reliable and Transacted Messaging with the Windows Communication Foundation
Tengo que reconocer que no finalicé el primer Lab y ya estoy como en una nube, ¡es fantástico!
Trataré de finalizar los Labs, y expondré mis opiniones aquí, esperando poder escuchar las vuestras. Dos días, no más....

lunes, enero 30, 2006

Aspectos de la base de datos temporal de SQL Mobile

SQL Mobile utiliza una base de datos temporal siempre y cuando se especifique de manera explícita mediante temp path y temp file max size en la propiedad ConnectionString de la clase SqlCeConnection. El tamaño de ésta dependerá del tipo de operación que ejecutemos. Aunque en un marco de desarrollo, digamos, convencional como puede ser la de creación de una aplicación escritorio, las bases de datos temporales son “transparentes” en la mayoría de casos, en un marco de desarrollo móvil el espacio de almacenamiento sea ROM o RAM es muy limitado, así que cuando decidamos utilizar la base de datos temporal, pensemos que:
- en operaciones de UPDATE o DELETE de muchas filas o
- en operaciones de SORT sobre columnas no indexadas, puede crear una base de datos temporal excesivamente grande ya que sólo existe una sola base de datos temporal para todas las base de datos. La base de datos temporal también almacenará información en el caso que una de las base de datos se acerque, según el crecimiento de la misma, al límite anteriormente especificado.

lunes, enero 23, 2006

Upgrader de SQL Mobile 2005

Upgrader de SQL Server CE(2000) a SQL Server Mobile (2005)

Para los que tenemos numerosas bases de datos en SQL Server CE 1.0 y 2.0, es interesante saber que Microsoft adjunta una herramienta de actualización llamada upgrade.exe; a continuación podeis encontrar todas las posibilidades de upgrade.exe. Ejemplo:

upgrade.exe /s "\dirOrigen\BDDorigen.sdf" /sp "pwdOrigen" /d "\dirDestino\BDDdestino.sdf" /dp “pwdDestino" /e /q

Parameter
Description

/s
The path to the source database file. (required)

/sp
The password for the source database file. (optional)

/d
The path to the destination database file. If you specify an existing file, the file will be overwritten. (required)

/dp
The password for the destination database file. (optional)

/e
If specified, the destination database will be encrypted. If you specify the /e parameter, you must also specify /sp and provide a password. (optional)

/q
Perform the upgrade silently without any UI. (optional)

/?
Displays this list of parameters. (optional)

jueves, enero 19, 2006


Device Emulator Manager
de VS .NET 2005

Visual Studio .NET 2005, ofrece una gran cantidad de emuladores con unas características mejoradas y nuevas. Los emuladores ofrecen soporte para ActiveSync, con lo que será posible conectarlos al escritorio y sincronizándolos como si de un dispositivo físico se tratara, la cual cosa facilita las aplicaciones RAPI.

Los nuevos emuladores pueden compartir carpetas. Hasta ahora el intercambio de ficheros se realizaba desde el ordenador escritorio compartiendo una carpeta y desde el emulador obteníamos los ficheros, ahora, la compartición de carpetas y ficheros es bidireccional. Con la introducción de Windows Mobile 5.0, la resolución de los dispositivos puede cambiar y por tanto los emuladores hacen lo mismo; podemos configurar tanto la resolución como la orientación de la pantalla.

Visual Studio .NET 2005 y Windows Mobile 5.0 SDK (for Pocket PC o for Smartphone) suministran (en total) 15 emuladores distintos, por lo que además se incorpora una nueva herramienta de administración de emuladores conocida como Device Emulator Manager (DEM). Además DEM es una pieza fundamental para la comunicación entre ActiveSync y los emuladores ya que en ella recae la responsabilidad de conexión y desconexión entre ambos.

miércoles, diciembre 28, 2005

Función LoadTypeLibEx de oleauto32.dll, modificaciones para .NET Framework 2.0

Buenas,

Estaba tratando de actualizar la aplicación COM+ Catalog Reader, para .NET Framework 2.0. Mi intención es sacar una segunda versión y mejorar algunas funcionalidades que por tiempo o por pereza no he podido arreglar.

Una de las funciones que me han dado problema es la que utilizo para importar mediante código la biblioteca WINNT\System32\Com\comadmin.dll (basada en COM), para pasarlo a un ensamblado de interoperabilidad primaria que utilizaré para leer las propiedades del catálogo de COM+ desde código administrado. Una de las funciones que utilizo, LoadTypeLibEx, cuya definición en .NET Framework 1.x era:

[DllImport("oleaut32.dll", CharSet=CharSet.Unicode)]
private static extern void LoadTypeLibEx(string strTypeLibName,
REGKIND regKind,
out UCOMITypeLib TypeLib);

para .NET Framework 2.0, el tipo UCOMTypeLib está desfasado o literalmente (deprecated - desaprobado), con lo que debemos substituirlo por:

[DllImport("oleaut32.dll", CharSet=CharSet.Unicode)]
private static extern void LoadTypeLibEx(string strTypeLibName, REGKIND regKind, out System.Runtime.InteropServices.ComTypes.ITypeLib TypeLib);

El funcionamiento es el mismo, lo único que ahora el CLR fuerza a la utilización del espacio de nombre ComTypes de System.Runtime.InteropServices para la utilización de una interfaz para la bilioteca de tipos de COM, espacio en el cual encontramos métodos que son definiciones de funciones COM y que subsituyen a los ya conocidos UCOM* de .NET Framework 1.x.

miércoles, diciembre 21, 2005

¡Felices Fiestas!

¡con GPS en mi móvil!

Pues sí, después de adquirir mi nuevo Motorola MPX220, y de jubilar el MPX200, me regalaron el TomTom 5 Mobile el cual configuré e instalé con éxito; por otra parte adquirí hace algún tiempo un GPS bluetooth BT77 de Nemerix, el cual traté de configurar y aquí el problema…. TomTom5 Mobile no lo reconocía.

Después de algunos días buscando por Internet, encontré una referencia la cual ofrecía una posible solución, echando mano del registro del sistema operativo del móvil, y debía hacerlo desde el PC ( a través de ActiveSync) puesto que los programas tipo regedit para Smartphone no me funcionaron y tampoco tenía conexión a Internet. El segundo problema es que desde mi casa no tengo cobertura GPS (obviamente en ninguna la hay) pero es que ni siquiera desde la ventana conseguía comunicarme con los satélites; la terraza comunitaria la descarté, en primer lugar por que me suponía más esfuerzo (físico se entiende, está en el sexto) y en segundo lugar, porque no me apetecía tener que explicar a alguna vecina (normalmente jubilada y cuyo mayor evento durante el año son las reuniones de la comunidad de vecinos) que lo que llevaba en la palma de la mano era un dispositivo de posicionamiento global, no una radio, y tener que decirle: ¡no!; señora, no ‘coje la’ FM.
Con lo que el procedimiento era tocar registro (en la habitación dónde tengo el ordenador, con la chaqueta y la bufanda puesta, ya que después de dos horas, aborreces quitártela si intuyes que te la volverás a poner en 5 minutos para volver a bajar a la calle… o sea en casa con la calefacción a 21 grados y con chaqueta, con dos cojo….), e ir a la calle, a darme un ‘paseíto’, y si no fuera porque estamos en Diciembre (en estas fechas en Igualada rondamos los 0 grados), hubiera sido más ameno o menos sufrido. La verdad es que venir del trabajo y arremangarme para poder configurar el GPS casi me cuesta hasta el divorcio!! Y es que decirle a tu mujer que desde las 7 de la tarde hasta las once de la noche vas a dar una vuelta (cada 10 minutos) con un dispositivo poco mas pequeño que un paquete de tabaco en la palma de la mano, con dos lucecitas rojas y azul, parpadeando (bueno solo parpadeaba la azul, la del Bluetooth, la roja, la jodida no parpadeó hasta posicionar los satélites), mirando el móvil a ver si las columnas que dicen ser señales de satélites se colorean de azul y aparecen las coordenadas de posición, sorteando los obstáculos urbanos (jodidas escaleras del parque, por poco pierdo el GPS, el móvil y probablemente algún diente, cuando caminen no olviden poner la vista de vez en cuando para ver por dónde van), sin guantes (más que dedos tenía palos o mejor hierros desengrasados, casi los pierdo por congelación y es que con guantes no acertaba ninguna tecla), y con las orejas como dos cubitos de hielo, para ellas es una especie de excusa para no estar en casa, cosa, obviamente, falsa, y es que a quien carajo se le ocurre???? A los informáticos… si es que hasta cenando, señores, me parecía oír a la tal Marta, sí hombre sí, la del TomTom, decirme:


  • A·venti·cinco·metros·GPS·no· funciona·no·tienes·ni·pu..·idea·palurdo·jeje·jeje·

Cuando al día siguiente, hice las paces con Marta (la del TomTom, con mi mujer tuve que currármelo más...), y me guió de camino al trabajo, que por cierto llevo 2 años yendo y me sé el camino como la palma de mi mano, palma, por otro lado, en la que tenía incluso agujetas de sujetar el jodido gps la noche anterior, fui el hombre más feliz de la faz de la tierra, si hasta para ir al garaje, que está a 50 metros de mi casa, ponía el navegador….. buff!!!!!

Nada señores, disfruten las fiestas, no se compliquen la vida, y si para la cena de empresa no pueden ir con una pantallita en el coche que te vaya guiando hasta el restaurante, y así no llegar tarde (o perderte que es peor) ya que eres el único del departamento que va sin GPS, no pasada absolutamente nada, créanme, lo primero es lo primero. (Pero gané la partida a Marta ¡¡¡juas juas!!! )

Felices Fiestas!

sábado, diciembre 10, 2005

De compras por el eBay... Motorola MPX220 ¡al saco!


Después de unos meses utilizando y sacándole el máximo provecho al Motorola MPX200, echaba en falta un nuevo dispositivo con Windows Mobile 2003 SE (de echo al MPX200 le instalé un firmware del Windows Mobile 2003 de la Mula WareHouse...), con Bluetooth y más memoria ROM y SDRAM. Estuve buscando varias posibilidades, en primer lugar el hermano mayor, el MPX220, pero no descarté los i-mate y los Qtek. Despues de buscar por toda la red, y en todos los idiomas, llegué a la conclusión que la verdad es que estaba muy contento con Motorola y por un precio razonable compré finalmente el MPX220 por eBay.

Las primeras impresiones fueron que se trataba de un móvil algo más grande que el MPX200, pero también más 'delgado' (profundidad). Me fastidió un poco el echo que llevara MiniSD en lugar de SD, esto hizo que el arsenal de tarjetas que tenía por casa no sirvieran de nada y tuve que buscarme la vida para encontrar MiniSD de 512Mb, y digo buscarme la vida porque no son fáciles de encontrar con el adaptador SD. Los conectores a USB y a la alimentación son distintos también al MPX200. Sin embargo, la posibilidad de conexión Bluetooth, la rapidez, o la cámara de fotos (aunque si les soy sincero ni siquiera la he utilizado) hacen del Motorola MPX220 un gran móvil. De echo las aplicaciones propias que tenía desarrolladas para Smartphone (en .NET CF), volaban en comparación al MPX200.

Con todo ello mi próximo objetivo era pedirles a los Reyes Magos, un GPS para que, almenos, cuando me pierda pueda echarle las culpas a 'algo', o que en época de retenciones (muy frecuentes en Barcelona, como en otros sitios...), tenga una alternativa a la de bostezar, hurgarme la nariz o hacer 'zapping' a la radio del coche, aunque siempre me queden los Chichos, en esa larga espera...

Pues eso, ya les informaré cuando el MPX220 decore de manera impresionante el espectacular salpicadero de mi 'carro', y escuche a la tal Marta guiarme por las carreteras de Barcelona... que emoción...

domingo, diciembre 04, 2005

Microsoft ActiveSync 4.1 Disponible

Disponible la última versión de ActiveSync para sincronización con dispositivos con Windows Mobile 5.0, solucionando los problemas iniciales que presentaba ActiveSync en la versión 4.0.

viernes, noviembre 11, 2005

.NET Compact Framework 2.0 Redistribuible

Ya está disponible .NET Compact Framework 2.0 Redistribuible para dispositivos Windows Mobile. Necesitaran Windows Installer 2.0, y no estaría de mas echarle un vistazo al SDK de .NET Framework 2.0.

Les aconsejo que adquieran el Windows Mobile 5.0 Developer Evaluation Kit, que podran conseguir pangando sólo los portes. La documentación del Windows Mobile 5.0 SDK en linea la podrán encontrar aquí. Y por último el SDK de la versión Smartphone tiene su descarga aquí.

Para la instalación de .NET Compact Framework 2.0, Alejandro Mezcua (MVP .NET Compact Framework), ha posteado en su blog una entrada explicándolo.

¡A disfrutar!

jueves, noviembre 10, 2005

Las versiones Visual Studio Express Editions, gratuitas por un año

Pues eso, Microsoft ha decidido, para los que queramos empezar a 'palpar' las novedades de .NET Framework 2.0 y/o C# 2.0, entre otros, ofrecer durante un año las versiones Express de:

  • Visual Basic .NET
  • Visual C++ .NET
  • Visual C# .NET
  • Visual J# .NET
  • Visual Web Developer

¡Saludos!

martes, noviembre 08, 2005

SQL Server 2005 Express Edition, ya disponible

El día 7 de Noviembre se presentó en sociedad junto a Visual Studio .NET 2005 y Biztalk Server 2006, el nuevo SQL Server 2005.

Aquí teneis el enlace para que se puedan bajar la versión gratuita (la evolución del MSDE 2000), de SQL Server 2005. Entre otros necesitaran instalar .NET Framework 2.0 y Windows Installer 3.0. Asímismo, se aconseja un memoria RAM de 512Mb para un funcionamiento óptimo. En cuanto a limitaciones vean este link sobre comparaciones con sus respectivas versiones.

Échenle un vistazo también a la herramienta de administración gratuita SQL Server Express Utility, en entorno Command, y SQL Server Express Management Studio, en entorno Windows. Así como a los Books Online y a recursos de ejemplos y demostraciones sobre SQL Server Express.

¡A disfrutar!

jueves, agosto 25, 2005

Nuevos recursos en desarrolloMobile.net

SQL SERVER CE

SQL Server CE.SQL Server 2005 Mobile Edition
Introducing SQL Server Mobile Edition

SQL Server CE.Otras
Database Migration from Pocket Access to SQL Server CE
Pocket Access and the .NET Compact Framework
Binary field in SqlCE
DesktopToDevice API

SISTEMAS OPERATIVOS MOBILE

SO.Windows Mobile 2005
Windows Mobile 5.0 SDK for Pocket PC
Preview of the operating system Windows Mobile 5.0 (Magneto)

SO.Windows Mobile 2003
Microsoft Windows Embedded Developer Center

Programas
Windows CE .NET 4.2 Platform Builder
Ping para Compact Framework

Noticias
Microsoft Releases Windows Mobile 5.0

CONFIGURACIÓN

Configuracion.Power
HOWTO: Get the Device Power Status

CONECTIVIDAD

Conectividad.Serie
Change Device Assigned to Outbound COM Port

Conectividad.IrDa
IrDA Client Class
Pocket PC TV Remote Control

Conectividad.Bluetooth
OBEX over Bluetooth

.NET COMPACT FRAMEWORK

.NET Compact Framework.Win Form
PDAGraphiX2 for Pocket PC
How to save a bitmap into jpeg file?

.NET Compact Framework.GDI+/Games
Pocket Streamer
Porting GAPI Games from Portrait to Square Screens

.NET Compact Framework.Depuración
CeDbgView32

.NET Compact Framework.Deployment
WCELoad dirty little secrets

.NET Compact Framework 2.0
Developing for Windows Mobile-based Smartphones: Present and Future

.NET Compact Framework 1.0
Patrones de implementación para Microsoft .NET Compact Framework
Obfuscating Smart Device Applications
Northwind Pocket Inventory: Logistics for Windows Mobile-based Pocket PCs
Generación de GUID en Pocket PC
MSMQ en Compact Framework .NET
Microsoft .NET Compact Framework

----------------------------------------------------------
Última actualización 25 de Agosto del 2005
www.desarrollomobile.net/acerdade.aspx

jueves, abril 21, 2005

Nuevas entradas de recursos en desarrolloMobile.NET

**Secciones**

SQL Server CE
SQL Server CE.Replicación
Step by Step: Program Microsoft SQL Server CE 2.0 Merge Replication Using .NET Compact Framework

Sistema Operativo
Windows CE 4.20
SDK's

Noticias
Nokia presenta Nokia 9300 su smartphone más inteligente para profesionales en movimiento
MovilForum

Documentos
Articulos
Creating a Pocket PC DLL Using C++
MSDN

Conectividad
Bluetooth
Look at Bluetooth programming on Windows Mobile
MSDN Channel

.NET Compact Framework
Win Form
Creación de Controles en CF .NET

Alojamiento de un control nativo de Windows en un control de formulario de .NET Compact Framework (.NET Compact Framework)

Adding Designer Support to the .NET Compact Framework DateTimePicker Control

.NET Compact Framework 2.0
From the Dept of Information Retrieval on .NET Compact Framework Network Performance

.NET Compact Framework 1.1
Generating GUIDs on the Pocket PC


----------------------------------------------------------
Última actualización 21 de Abril del 2005
www.desarrollomobile.net/acerdade.aspx

miércoles, abril 20, 2005

Interoperabilidad no administrada y migración (y III)

dotNetMania
dotNetMania

Interoperabilidad no administrada y migración (y III)

En esta última parte describiremos cómo llamar a funciones externas con un ejemplo a una API de Windows. También describiremos la utilización de TypeLibConverter, en el proceso de exportación e importación de la biblioteca de tipos, clave para llevar acabo la interoperabilidad COM. Material de apoyo . MATERIAL DE APOYO en dotNetMania.com

domingo, marzo 20, 2005

Nuevas entradas de recursos en desarrolloMobile.NET

-Nuevos recursos-

** Secciones **
Windows Mobile
Seguridad http://www.desarrollomobile.net/explore.aspx?item=58
Creación de un dispositivo seguro de Windows CE
MSDN Library - Maricia Alforque

.NET Compact Framework
ASP .NET Mobile http://www.desarrollomobile.net/explore.aspx?item=56
Opciones de autenticación para dispositivos móviles

Windows Forms http://www.desarrollomobile.net/explore.aspx?item=52
Scrolling Form Contents (gotDotNet.COM)
Using the InputPanel Component (gotDotNet.COM)
Microsoft® .NET Compact Framework Microsoft.WindowCE.Forms Namespace Documentation (CHM)

P/Invoke http://www.desarrollomobile.net/explore.aspx?item=55
Microsoft® .NET Compact Framework API Documentation (CHM)

Configuración
Otros http://www.desarrollomobile.net/explore.aspx?item=18
Creating Icon object from Win32 icon handle in .NET Compact Framework (OpenNETCF.org)

SQL Server CE
SQL Server 2005 Mobile Edition http://www.desarrollomobile.net/explore.aspx?item=65
A Technical Comparison of Replication and Remote Data Access Features in SQL Server 2005 Mobile Edition 3.0 (SQL Server Developer Center)
Multi-User Considerations in Data Synchronization for SQL Server 2005 Mobile Edition 3.0 (SQL Server Developer Center)

Última actualización 17 de Marzo 2005
http://www.desarrollomobile.net/acercade.aspx

sábado, marzo 19, 2005

Acerca de... DesarrolloMobile.NET


DesarrolloMobile.NET pretende ser un punto de partida para la programación en la familia Microsoft Mobile. La gran mayoría de recursos no són más que enlaces a otros sites, tanto el lengua española como en Inglés, puesto que hoy por hoy la gran mayoría de recursos són en este idioma.

Cualquier autor que vea algún enlace y tenga algo que objetar, pónganse en contacto y rectificaré o eliminaré cualquier información errónea o no correcta. Asímismo todas las imágenes han sido extraidas de Internet, del mismo modo, si alguien no considere oportuno que deba estar en el site háganmelo saber cuanto antes.

Cualquiera puede enviar un nuevo recurso, principalmente si es suyo y si no, que esté en un ámbito abierto sin ninguna cláusula de propiedad intelectual.

Todo el código mostrado, empieza con el nombre del autor como comentario. No se publica nada que como mínimo haya sido puesto en conocimiento del autor de manera explícita puesto que el código se 'extrae' del artículo original, para la facilidad del usuario. Aún y así si algún autor encuentra que su código ha sido extraido sin su consentimiento pónganse en contacto conmigo. En los artículos con código que no tienen autores explícitos (p.e. artículos del MSDN) el comentario inicial hace referencia a la procedencia del artículo. Asímismo se intenta que todo código tenga 'a mano' el enlace del artículo original.

Cualquier consulta o sugerencia será atendida en la mayor brevedad posible.

Saludos,

José Miguel Torres
admin@desarrollomobile.net

viernes, marzo 18, 2005

Interoperabilidad no administrada y migración (II)

dotNetMania
Segundo de una serie de tres artículos acerca de la interoperabilidad con código no administrado y estrategias de migración, ya publicado en dotNetManía número 13. En la web www.dotnetmania.com podrás encontrar el código referente al ejemplo del artículo.

martes, marzo 01, 2005

Los mejores artículos :: Programación con Microsoft Smartphone

Los mejores artículos :: Programación con Microsoft Smartphone

TÍTULO ORIGINAL: Best of Articles :: Microsoft Smartphone Programming DE Nauman Leghari
TRADUCIDO POR: José Miguel Torres

Esta clase de libro es una colección de artículo agrupados de temas por capítulos.

Capítulo 1: Introducción a .NET Compact Framework

Fundamentos de Desarrollo para Microsoft .NET Compact Framework para Dsarrolladores en .NET Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/net_vs_netcf.asp?frame=true>

Lo nuevo en Smartphone 2003

<http://msdn.microsoft.com/library/en-us/dnwmnew/html/manew_sp03.asp?frame=true>

Desarrollar Windows Mobile 2003 para Smartphone Utilizando .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/Smartphone_2003.asp?frame=true>

Introducción al Modelo de Desarrollo Microsoft Smartphone con C#

<http://www.codeproject.com/netcf/SmartphoneIntroCSharp.asp>

Consideraciones de Diseño para Aplicaciones Microsoft Smartphone

<http://www.oreillynet.com/pub/a/wireless/2004/01/07/smartphone.html>

Capítulo 2: La Interfaz de Usuario de Smartphone

Desarrolla Aplicaciones para Smartphone Sin Sacrificar la Potencia de tu Interfaz de Usuario.

<http://www.devx.com/wireless/Article/21291>

Creando Aplicaciones en un Marco ‘multiformulario’ para Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfuiframework.asp?frame=true>

Como Crear un Botón con Imagen con Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ImageButton.asp?frame=true>

Diseño Avanzado de la Interfaz de Usuario Utilizando .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/grfCraftingSmartphoneUserInterfacesUsingNETCompactFramework.asp?frame=true>

Desarrollo para Smartphone con Modelos de Programación Ya Conocidos

<http://www.devx.com/wireless/Article/17968>

Capítulo 3: Controles Smartphone

Creando Controles ‘a mano’ en .NET Compact Framework

<http://www.devx.com/getHelpOn/10MinuteSolution/17430>

Ejemplo .NET Compact Framework: Incrustando un Control Windows Nativo

<http://www.microsoft.com/downloads/details.aspx?familyid=794f5e1a-984b-474f-8139-a1a64c595151&displaylang=en>

Desarrollando Controles Personalizados en C# con las Extensiones Smart Device (SDE)

<http://msdn.microsoft.com/library/en-us/dncenet/html/customctrlssde.asp?frame=true>

Capítulo 4: Gráficos

Creando un Control de Animación Basado en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/animationcontrol.asp?frame=true>

Capítulo 5: Ficheros y Directorios

Trabajando con Ficheros en Dispositivos Smartphone con .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/SPFiles.asp?frame=true>

Capítulo 6: Servicios Web para Dispositivos Móviles

Consumiendo Servicios Web con Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfwebservices.asp?frame=true>

Capítulo 7: Interoperabilidad con Código No Administrado

Accediendo a las API’s del Teléfono Desde Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfphoneapi.asp?frame=true>

Desarrollo con P/Invoke Avanzado con Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfadvinterop.asp?frame=true>

Introducción a P/Invoke y al Cálculo De Referencias en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfintrointerp.asp?frame=true>

Creando una Librería P/Invoke

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PInvokeLib.asp?frame=true>

Utilizar Comunicación Serie desde P/Invoke Mediante API’s con Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/PISAPICF.asp?frame=true>

Utilización de dumpbin.exe como Ayuda para Declaraciones P/Invoke

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfdumpbinpinvoke.asp?frame=true>

Capítulo 8: Implementando Aplicaciones Smartphone

Plantillas de Implementación para Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/DeploymentPatterns.asp?frame=true>

Implementación de Aplicaciones Smartphone 2003 Sin Misterios.

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/sp_2003_app_deploy_demyst.asp?frame=true>

Capítulo 9: Interoperabilidad Entre Plataformas

Conectando dispositivos Microsoft Mobile a Infraestructuras Java

<http://www.sys-con.com/story/?storyid=47342&DE=1>

Orquestando Aplicaciones Móviles Desconectadas Utilizando una Arquitectura Orientada a Servicios (SOA)

<http://msdn.microsoft.com/library/en-us/dnppc2k3/html/develop_disconnect_mob_apps.asp?frame=true>

Capítulo 10: Programación de Juegos con Smartphone

Programación de Juegos: Games Programming with Cheese: Part One

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/gamesprogwithcheese.asp?frame=true>

Programación de Juegos: Games Programming with Cheese: Part Two

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/playingthegame.asp?frame=true>

Programación de Juegos: Games Programming with Cheese: Part Three

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/completingthegame.asp?frame=true>

Programación de Juegos: Games Programming with Cheese: Part Four

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/agameapplication.asp?frame=true>

Capítulo 11: Temas avanzados

Seguridad:

Una Guía de Seguridad de Aplicaciones Smartphone y Modelo de Firmado de Código para Desarrolladores

<http://msdn.microsoft.com/library/en-us/dnsmtphn2k3/html/smartphone_security.asp?frame=true>

Enviando y Recibiendo Mensajes SMS:

Recibiendo Mensajes SMS Desde una Aplicación Administrada.

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/ReceivingSMSMessages.asp?frame=true>

Enviando SMS desde Aplicaciones Basadas en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfsendsms.asp?frame=true>

Depurando:

Depuración en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/CompactFXDebug.asp?frame=true>

Rendimiento:

Una Aproximación al Recolector de Elementos de .NET Compact Framework

<http://weblogs.asp.net/stevenpr/archive/2004/07/26/197254.aspx>

Recomendaciones para Multiproceso en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfmultithreadedapp.asp?frame=true>

Técnicas de Procesamiento en Segundo Plano en Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/BackgroundProcess.asp?frame=true>

Optimizando la Carga de Formularios en Aplicaciones Microsoft .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfimproveformloadperf.asp?frame=true>

Desarrollo Optimizado de Aplicaciones .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/netcfperf.asp?frame=true>

Administración Avanzada de Memoria en .NET Compact Framework

<http://weblogs.asp.net/mikezintel/archive/2004/12/08/278153.aspx>

Misceláneo:

Creando Aplicaciones Auto Actualizables con .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/AutoUpdater.asp?frame=true>

Optimizando Comunicaciones HTTP Utilizando HttpWebRequest con .NET Compact Framework y con Proveedores ASP .NET personalizables

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/httpcomm.asp?frame=true>

Conectando Aplicaciones Smartphone 2003 a Infraestructuras Remotas.

<http://www.devx.com/dotnet/article/22460>

Arquitectura de Servicios Web Móviles de .NET Compact Framework

<http://msdn.microsoft.com/library/en-us/dnnetcomp/html/NETCFMA.asp?frame=true>

Capítulo 12: Lo próximo

Lo Nuevo en .NET Compact Framework 2.0

<http://msdn2.microsoft.com/library/ws1c3xeh.aspx>

Otros Recursos (Colección de enlaces agrupados por comentarios)

Recomendaciones y Trucos Pragmáticos del Uso de Smartphone

http://homepages.inspire.net.nz/~gambit/Article/

Programación Smartphone 2002/2003/SE con Visual Basic embebido (eVB):

http://www.omnisoft.com/articles/spevb/default.asp

Sugerencia del Día

http://spaces.msn.com/members/lesgainous/