<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://geeks.ms/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Byteabyte</title><subtitle type="html" /><id>http://geeks.ms/blogs/amezcua/atom.aspx</id><link rel="alternate" type="text/html" href="http://geeks.ms/blogs/amezcua/default.aspx" /><link rel="self" type="application/atom+xml" href="http://geeks.ms/blogs/amezcua/atom.aspx" /><generator uri="http://communityserver.org" version="4.1.31106.3070">Community Server</generator><updated>2007-09-13T07:14:25Z</updated><entry><title>Introducción a Split Testing</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2010/10/05/introducci-243-n-a-split-testing.aspx" /><id>/blogs/amezcua/archive/2010/10/05/introducci-243-n-a-split-testing.aspx</id><published>2010-10-05T05:21:27Z</published><updated>2010-10-05T05:21:27Z</updated><content type="html">&lt;p&gt;&lt;a href="http://geeks.ms/blogs/amezcua/archive/2010/10/03/veldu-net-echa-a-andar.aspx" target="_blank"&gt;El otro día Rodrigo se quejaba de que no explicaba lo que era Split Testing&lt;/a&gt; y que puede que hubiese gente que no lo supiera. De forma que si queréis saber qué es y para que vale, &lt;a href="http://www.veldu.net/es/que-es-split-testing" target="_blank"&gt;he publicado una introducción en Veldu.net&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Para los impacientes, os dejo aquí un resumen y, si os sigue interesando, podeís visitar el link de antes para leer algo más.&lt;/p&gt;  &lt;p&gt;“Split Testing pretende proporcionar herramientas que permitan evolucionar un sitio o aplicación web de forma &amp;quot;controlada&amp;quot;, midiendo los resultados de los diferentes cambios realizados. La idea es ir realizando pequeñas modificaciones al sitio y ver cuál es su impacto en el comportamiento de los usuarios.&lt;/p&gt;  &lt;p&gt;El proceso a seguir sería el que se enumera a continuación:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Antes de hacer un cambio, diseño dos versiones, normalmente manteniendo la versión antigua y una versión nueva.&lt;/li&gt;    &lt;li&gt;Se ponen las dos versiones a funcionar en paralelo. De forma aleatoria, unos usuarios verán una versión y otros usuarios verán la alternativa. Una vez se muestra a un usuario una de las versiones, si vuelve seguirá viendo la misma.&lt;/li&gt;    &lt;li&gt;Se mide el resultado de esas dos versiones.&lt;/li&gt;    &lt;li&gt;Después de un tiempo, dependiendo de los resultados se selecciona qué versión me ha funcionado mejor y se descarta la otra. La versión &amp;quot;ganadora&amp;quot; será la que verán todos los usuarios en el futuro.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;“&lt;/p&gt;  &lt;p&gt;Para completar ese proceso, se hacen necesarias ciertas herramientas que lo faciliten ya que implica realizar un buen seguimiento de los usuarios, estableciendo objetivos claros de qué se quiere conseguir con cada modificación y comparando resultados de igual a igual, de forma que se pueda entender el impacto de las modificaciones que se vayan haciendo.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=182840" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="ASP.NET" scheme="http://geeks.ms/blogs/amezcua/archive/tags/ASP.NET/default.aspx" /><category term="Veldu" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Veldu/default.aspx" /></entry><entry><title>Veldu.net echa a andar</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2010/10/03/veldu-net-echa-a-andar.aspx" /><id>/blogs/amezcua/archive/2010/10/03/veldu-net-echa-a-andar.aspx</id><published>2010-10-03T16:49:00Z</published><updated>2010-10-03T16:49:00Z</updated><content type="html">&lt;p&gt;&amp;iquest;Sois programadores de ASP.NET? &amp;iquest;Sab&amp;eacute;is lo que es Split Testing (o A/B Testing)? &amp;iquest;Lo practica&amp;iacute;s? Entonces &lt;a href="http://www.veldu.net/" target="_blank"&gt;Veldu&lt;/a&gt;&amp;nbsp;os va a interesar. Estar&amp;aacute; disponible en breve....&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=182756" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="ASP.NET" scheme="http://geeks.ms/blogs/amezcua/archive/tags/ASP.NET/default.aspx" /><category term="Veldu" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Veldu/default.aspx" /></entry><entry><title>Tupply para Windows Phone 7</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2010/10/03/tupply-para-windows-phone-7.aspx" /><id>/blogs/amezcua/archive/2010/10/03/tupply-para-windows-phone-7.aspx</id><published>2010-10-03T16:41:00Z</published><updated>2010-10-03T16:41:00Z</updated><content type="html">&lt;p&gt;La versi&amp;oacute;n de Windows Phone 7 de &lt;a target="_blank" href="http://www.tupply.com/"&gt;Tupply&lt;/a&gt; se ha presentado hace unos d&amp;iacute;as al Imagine Mobile 2010 y estar&amp;aacute; en breve disponible en el Market de Windows Phone 7, espero que os guste...&lt;/p&gt;
&lt;p&gt;EDIT: Incluyo algunas capturas de pantalla que no ten&amp;iacute;a...&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/anuncios_2D00_recientes.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/anuncios_2D00_recientes.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
Lista de anuncios recientes
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/muros.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/muros.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
Lista de muros
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/buscador.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/buscador.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
B&amp;uacute;squeda de anuncios
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/muro.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/muro.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
Detalles de un muro
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/more_2D00_info.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/amezcua/more_2D00_info.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
Su localizaci&amp;oacute;n
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=182755" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Tupply" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Tupply/default.aspx" /><category term="Windows Phone" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Windows+Phone/default.aspx" /></entry><entry><title>¿Te han fastidiado tus compras de Navidad? ¡Quéjate!</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2010/01/08/191-te-han-fastidiado-tus-compras-de-navidad-161-qu-233-jate.aspx" /><id>/blogs/amezcua/archive/2010/01/08/191-te-han-fastidiado-tus-compras-de-navidad-161-qu-233-jate.aspx</id><published>2010-01-08T10:19:34Z</published><updated>2010-01-08T10:19:34Z</updated><content type="html">Desde finales de Diciembre he habilitado un nuevo sitio web (http://www.nocompresen.com).  Está orientado a reflejar quejas sobre el trato que nos dan algunos comercios o sus empleados. Si os han tratado mal en algún momento os animo a que dejéis reflejadas vuestras quejas ahí, o que comentéis sobre las existentes.  Quizá dejando las quejas en un sitio público consigamos que poco a poco el trato mejore.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=164586" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Web" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Web/default.aspx" /><category term="NoCompresEn.com" scheme="http://geeks.ms/blogs/amezcua/archive/tags/NoCompresEn.com/default.aspx" /></entry><entry><title>Alucino con los niños; o cómo el paradigma del iPhone lo cambia todo...</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2009/10/09/alucino-con-los-ni-241-os-o-c-243-mo-el-paradigma-del-iphone-lo-cambia-todo.aspx" /><id>/blogs/amezcua/archive/2009/10/09/alucino-con-los-ni-241-os-o-c-243-mo-el-paradigma-del-iphone-lo-cambia-todo.aspx</id><published>2009-10-09T18:25:10Z</published><updated>2009-10-09T18:25:10Z</updated><content type="html">&lt;p&gt;Actualmente tengo dos niñas (la luz de mi vida, las perlas de mis ojos, etc, etc, bla, bla, bla, ... eso no viene al caso...) una de 5 años y otra que acaba de cumplir dos... Ayer y antesdeayer he estado en el hospital con la más pequeña para hacerle unas pruebas de alergia; yo acojonado, y ella encantada, pero ese no es el tema de este post...&lt;/p&gt;  &lt;p&gt;El caso es que las pruebas de alergia que le han hecho constan de 2 mañanas competas, de 9.00 am a 14.00 pm, esperando a ver si lo que le dan para tomar reacciona o no. Mientras tanto, pues hay que esperar.&lt;/p&gt;  &lt;p&gt;Así, mientras esperaba ayer, mi pequeña y las demás que había por allí se divertían, a la vez que los padres que estábamos con ellos/as hacíamos lo que podíamos por llevarnos bien; &lt;a href="http://www.byteabyte.net/2009/10/07/LaCienciaEspa%C3%B1olaNoNecesitaTijeras.aspx"&gt;que para eso en nuestra generación nos enseñaron algo de educación&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;El caso es que para pasar el rato yo le dejaba el iPhone para jugar (que lo maneja mejor que mis hermanos, que son unos bandarras, todo hay que decirlo) y ha abierto entre otras cosas la aplicación de Seadragon, que, si no la conocéis, y tenéis un iPhone o iPod Touch, pues no sé a qué esperáis a descargarla... (por cierto, los cutres de Windows Mobile criticaron a la gente que publicó la aplicación por favorecer al iPhone; a ver si ellos sacan de una p…ta vez algo que mi niña de 2 años pueda usar sin que yo la tenga que enseñar... pero ese es otro tema...) &lt;/p&gt;  &lt;p&gt;El caso es que abrió la aplicación y estuvo viendo las fotos, zoom para arriba, zoom para abajo, con el gesto de &lt;a href="http://video.google.es/videosearch?q=iphone+pinch&amp;amp;rls=com.microsoft:es&amp;amp;oe=UTF-8&amp;amp;um=1&amp;amp;ie=UTF-8&amp;amp;ei=7n3PSsufDd2MjAfn6YSkBQ&amp;amp;sa=X&amp;amp;oi=video_result_group&amp;amp;ct=title&amp;amp;resnum=1&amp;amp;ved=0CBMQqwQwAA#"&gt;abrir y cerrar los dedos típico&lt;/a&gt;, como se espera en esa aplicación y en otras del iPhone.&lt;/p&gt;  &lt;p&gt;Yo, tan listo como soy, le dejé el iPhone para que &lt;strike&gt;me dejara en paz&amp;#160; &lt;/strike&gt;se divirtiera y me cogí el último número de Sky&amp;amp; Telescope, que me había llegado la noche anterior.&lt;/p&gt;  &lt;p&gt;Mientras ella jugaba, pues yo me leía la revista... Y ahí llega lo que me deja alucinado... Yo le he enseñado a la pequeña que con el gesto de &lt;a href="http://video.google.es/videosearch?q=iphone+pinch&amp;amp;rls=com.microsoft:es&amp;amp;oe=UTF-8&amp;amp;um=1&amp;amp;ie=UTF-8&amp;amp;ei=7n3PSsufDd2MjAfn6YSkBQ&amp;amp;sa=X&amp;amp;oi=video_result_group&amp;amp;ct=title&amp;amp;resnum=1&amp;amp;ved=0CBMQqwQwAA#"&gt;&amp;quot;pinch&amp;quot;&lt;/a&gt; puede hacer zoom alejando y acercando la imagen... y luego, cuando se aburrió del teléfono pues me quitó la revista que estaba leyendo, como no podía ser de otra manera y …&lt;/p&gt;  &lt;p&gt; ¿qué es lo que se le ocurre hacer sobre las fotos de las galaxías que se ven en la revista?&lt;/p&gt;  &lt;p&gt;Exactamente!!!!, quería, con el gesto de pinch de los dedos, hacer un &amp;quot;zoom&amp;quot; sobre la foto en el papel....&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Pues eso, ahí os lo dejo la duda a todos los que estáis estudiando temas de UX, que yo me voy a tomar unas cañas… (yo seguiré con mis cajas de texto hasta extinguirme, que es cosa de evolución...)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=157755" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Evolution" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Evolution/default.aspx" /></entry><entry><title>La ciencia española no necesita tijeras</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2009/10/07/la-ciencia-espa-241-ola-no-necesita-tijeras.aspx" /><id>/blogs/amezcua/archive/2009/10/07/la-ciencia-espa-241-ola-no-necesita-tijeras.aspx</id><published>2009-10-07T10:10:38Z</published><updated>2009-10-07T10:10:38Z</updated><content type="html">&lt;p&gt;&amp;quot;Los científicos no estudian la naturaleza porque sea útil; la estudian porque les place, y les place porque es bella. Si la naturaleza no fuese bella, no valdría la pena conocerla, no valdría la pena vivir la vida&amp;quot; (Henri Poincaré)&lt;/p&gt;  &lt;p&gt;“La verdadera ciencia enseña, sobre todo, a dudar y a ser ignorante.” (Miguel de Unamuno)&lt;/p&gt;  &lt;p&gt;“Mientras los hombres sean libres para preguntar lo que deben; libres para decir lo que piensan; libres para pensar lo que quieran; la libertad nunca se perderá y la ciencia nunca retrocederá.” (Julius Robert Oppenheimer)&lt;/p&gt;  &lt;p&gt;“En la vejez la ciencia es para nosotros un cómodo refugio; y si no la plantamos de jóvenes, no nos dará sombra cuando seremos viejos” (Conde de Chesterfield)&lt;/p&gt;  &lt;p&gt;“La ciencia que la humanidad tiene en un momento dado depende de lo que es la humanidad en ese momento.” (Georg Simmel)&lt;/p&gt;  &lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2488/3973473121_e76fde787c_o.jpg" width="400" alt="" /&gt;&lt;/p&gt;  &lt;p&gt;“Y sobre este tema no tengo más que decir.&amp;quot; (Forest Gump)&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;i&gt;Nota:&lt;/i&gt;&lt;/b&gt;     &lt;br /&gt;&lt;i&gt;Esta entrada se suma a la iniciativa &lt;a href="http://aldea-irreductible.blogspot.com/2009/10/la-ciencia-en-espana-no-necesita.html"&gt;&lt;b&gt;LA CIENCIA ESPAÑOLA NO NECESITA TIJERAS&lt;/b&gt;&lt;/a&gt;, promovida desde &lt;a href="http://aldea-irreductible.blogspot.com/"&gt;La Aldea Irreductible&lt;/a&gt;.&lt;/i&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=157521" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Ciencia" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Ciencia/default.aspx" /></entry><entry><title>Microsoft Pre-Incubation Program y Barcelona Activa. Un modelo a seguir.</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/12/22/microsoft-pre-incubation-program-y-barcelona-activa-un-modelo-a-seguir.aspx" /><id>/blogs/amezcua/archive/2008/12/22/microsoft-pre-incubation-program-y-barcelona-activa-un-modelo-a-seguir.aspx</id><published>2008-12-22T11:57:19Z</published><updated>2008-12-22T11:57:19Z</updated><content type="html">&lt;p&gt;La semana pasada y parte de la anterior he estado realizando una serie de entrevistas con emprendedores (11 en total) para conocer y ayudar en la arquitectura de sus aplicaciones. Esta tarea forma parte de los servicios que se ofrecen dentro del programa &amp;quot;Microsoft Pre-Incubation Program&amp;quot;, un programa impulsado en este caso por Microsoft, Barcelona Activa y Osborne Clark.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.barcelonactiva.cat/barcelonactiva/es/que-es-barcelona-activa/quienes-somos/index.jsp" target="_blank"&gt;Barcelona Activa&lt;/a&gt; es una iniciativa del ayuntamiento de Barcelona para impulsar la creación de empresas de todo tipo. Disponen de espacios de encuentro de libre uso, formación y asesoramiento gratuito en todos los ámbitos de creación de empresa y espacio de oficinas a costes MUY competitivos durante los primeros años de funcionamiento de la empresa. Las oficinas se encuentran dentro de la ciudad con muy buen acceso de transporte público.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/spain/prensa/content/noticias/2008/noviembre/n27.aspx" target="_blank"&gt;Microsoft Pre-Incubation Program&lt;/a&gt; es un programa que ofrece diferentes servicios de tutorías, formación y consultoría tecnológica (donde yo entro), así como la integración en el programa &lt;a href="http://www.microsoftstartupzone.com/BizSpark/Pages/At_a_Glance.aspx" target="_blank"&gt;BizSpark&lt;/a&gt; para aquellos emprendedores cuyo foco de empresa sea más tecnológico.&lt;/p&gt; &lt;p&gt;Dentro de estos programas, una vez que un emprendedor dispone de un plan de negocio viable, se le ofrece la posibilidad de ponerse en contacto con inversores para que intenten conseguir la financiación necesaria para arrancar su proyecto.&lt;/p&gt; &lt;p&gt;En mi opinión, esta combinación de iniciativas promueve muy claramente la creación de empresas y de empleo potencialmente de calidad. Por un lado, el propio centro de Barcelona Activa da trabajo a un buen número de personas, personal administrativo y técnicos en diversos campos. Luego, personal externo ofrece formación y consultoría de manera temporal muy concreta. Finalmente, aquellas empresas que consiguen arrancar, emplean inicialmente a sus fundadores y, si funcionan, ofrecerán trabajo a un número indeterminado de personas. Además, aunque las empresas no funcionen o no consigan arrancar, la formación que los emprendedores adquieren es muy válida para comenzar otros proyectos empresariales teniendo gran parte del camino ya andado.&lt;/p&gt; &lt;p&gt;Ahora que estamos inundados todo el día con noticias sobre la crisis, creo que se debería gastar dinero público en la creación de centros de este estilo, uno por provincia no estaría mal, para potenciar las economías locales con empleos y formación de calidad, poniendo la vista en proyectos de larga duración con un gran potencial de crecimiento.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=133238" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Microsoft" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Microsoft/default.aspx" /><category term="Emprendedores" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Emprendedores/default.aspx" /></entry><entry><title>IEMobile 6</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/11/12/iemobile-6.aspx" /><id>/blogs/amezcua/archive/2008/11/12/iemobile-6.aspx</id><published>2008-11-12T09:05:34Z</published><updated>2008-11-12T09:05:34Z</updated><content type="html">&lt;p&gt;&lt;a href="http://blogs.msdn.com/windowsmobile/archive/2008/11/11/internet-explorer-mobile-6.aspx" target="_blank"&gt;Ya es oficial&lt;/a&gt;. Desde hace un tiempo se vienen oyendo rumores de que se estaba desarrollando un nuevo navegador para Windows Mobile; ayer se anunció en el TechEd en Barcelona.&lt;/p&gt; &lt;p&gt;El nuevo navegador se llama &amp;quot;Internet Eexplorer Mobile 6&amp;quot; y estará disponible en los nuevos dispositivos que vayan saliendo a la venta (según los fabricantes vayan actualizando la plataforma). Desgraciadamente no se puede descargar e instalar sin más, como nos gustaría que pasase a muchos.&lt;/p&gt; &lt;p&gt;Como novedades a destacar, han sustituido completamente el núcleo de la aplicación y es capaz de &amp;quot;pintar&amp;quot; las páginas de forma completa, con capacidad de zoom y de desplazamiento con el dedo. Se ha incluido JScript 5.7 (heredado de IE 8) y dispone de Adobe Flash Lite 3.1 (toma ya iPhone!! ;-)) para poder ver clips de Flash incrustados en las páginas.&lt;/p&gt; &lt;p&gt;Aunque que yo sepa todavía no hay terminales con esta versión cargados, &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=1A7A6B52-F89E-4354-84CE-5D19C204498A&amp;amp;displaylang=en" target="_blank"&gt;ya están disponibles los emuladores&lt;/a&gt; para probarlo.&lt;/p&gt; &lt;p&gt;Yo por mi parte quiero probar cómo funciona, o si es del todo posible que funcione, alojado en una aplicación .NET Compact Framework...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=113839" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /><category term="Windows Mobile" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Windows+Mobile/default.aspx" /></entry><entry><title>Mobile MVC en CodePlex</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/11/11/mobile-mvc-en-codeplex.aspx" /><id>/blogs/amezcua/archive/2008/11/11/mobile-mvc-en-codeplex.aspx</id><published>2008-11-11T09:11:45Z</published><updated>2008-11-11T09:11:45Z</updated><content type="html">&lt;p&gt;&lt;a href="http://blogs.msdn.com/priozersk/archive/2008/11/11/mobile-mvc-on-codeplex.aspx" target="_blank"&gt;Alex Yakhnin&lt;/a&gt; (antiguo MVP, ahora consultor en Microsoft) acaba de &lt;a href="http://www.codeplex.com/MobileMVC" target="_blank"&gt;publicar en CodePlex&lt;/a&gt; un modelo de patrón MVC para aplicaciones .NET Compact Framework. Lleva bastante tiempo con el tema, escribiendo sobre ello y refinando el código. Yo la última versión publicada aún no la he probado, pero los ejemplos anteriores si y tienen buena pinta...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=112983" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /></entry><entry><title>Cómo acceder a las cabeceras de HTTP de la respuesta de un servicio WCF en .NET Compact Framework</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/07/17/c-243-mo-acceder-a-las-cabeceras-de-http-de-la-respuesta-de-un-servicio-wcf-en-net-compact-framework.aspx" /><id>/blogs/amezcua/archive/2008/07/17/c-243-mo-acceder-a-las-cabeceras-de-http-de-la-respuesta-de-un-servicio-wcf-en-net-compact-framework.aspx</id><published>2008-07-17T10:42:33Z</published><updated>2008-07-17T10:42:33Z</updated><content type="html">&lt;p&gt;Si has programado algún cliente WCF en .NET Compact Framework, habrás visto que, por el momento, el único binding admitido es el básico (basicHttpBinding) con lo que se están tratando esencialmente servicios Web.&lt;/p&gt; &lt;p&gt;Para usarlos desde .NET Compact Framework lo habitual es crear una clase proxy que facilite el acceso al servicio. Para ello se utiliza la herramienta &amp;quot;netcfsvcutil.exe&amp;quot; que funciona de manera similar a la utilidad de &amp;quot;Agregar referencia web&amp;quot; de Visual Studio. Se apunta la herramienta al WSDL del servicio y ésta genera el código necesario para utilizarlo.&lt;/p&gt; &lt;p&gt;En este caso, &amp;quot;netcfsvcutil&amp;quot; generará dos ficheros que hay que incluir en los proyectos. Uno llamado CFClientBase y otro con el nombre del servicio, que será la clase proxy a usar y que a su vez hereda de CFClientBase.&lt;/p&gt; &lt;p&gt;Al usarlos en el código, habrá que crear una instancia de la clase generada como proxy que incorpora todas las operaciones disponibles en el servicio que serán los métodos marcados en el servicio WCF como &amp;quot;OperationContract&amp;quot; y los datos exportados, marcados como &amp;quot;DataContract&amp;quot;.&lt;/p&gt; &lt;p&gt;Su uso final es muy simple ya que sólo hay que crear un objeto del tipo del proxy y llamar a la función generada correspondiente, pero de tan sencillo que es, se oculta mucha funcionalidad que puede ser necesaria en algún momento y no está accesible.&lt;/p&gt; &lt;p&gt;En un caso reciente quise obtener la cabecera &amp;quot;Date&amp;quot; de la respuesta HTTP del servicio WCF, pero esta información no está presente en el proxy en ningún sitio. Después de indagar bastante di con la solución. En la clase &lt;strong&gt;CFClientBase&lt;/strong&gt; generada hay un método llamado &amp;quot;&lt;strong&gt;getReply&lt;/strong&gt;&amp;quot;. Este método devuelve un objeto de tipo &lt;strong&gt;System.ServiceModel.Channels.Message&lt;/strong&gt;, que contiene el mensaje devuelto por el servicio WCF. Este mensaje a su vez incluye una colección llamada &amp;quot;&lt;strong&gt;Properties&lt;/strong&gt;&amp;quot;. Dentro de estas propiedades hay una llamada &amp;quot;&lt;strong&gt;httpResponse&lt;/strong&gt;&amp;quot; (accesible como message.Properties[&amp;quot;httpResponse&amp;quot;]) que es de tipo HttpResponseMessageProperty. Una vez ahí se dispone de toda la respuesta http y, en concreto, están accesibles las cabeceras HTTP como una colección llamada &amp;quot;&lt;strong&gt;Headers&lt;/strong&gt;&amp;quot;.&lt;/p&gt; &lt;p&gt;En mi caso, modifiqué la clase CFClientBase para exponer el mensaje de respuesta como una propiedad y tenerlo accesible así desde mi código de una forma cómoda. Hay que recordar que si se vuelve a generar el proxy mediante netcfsvcutil se perderán esos cambios y habrá que volver a incorporarlos.&lt;/p&gt; &lt;p&gt;Mi código final para acceder a la fecha de la respuesta HTTP queda algo así (una vez he expuesto la propiedad ReplyMessage en el proxy y sin control de errores):&lt;/p&gt; &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;string&lt;/span&gt; fechaHeader = &lt;/pre&gt;&lt;pre&gt; ((HttpResponseMessageProperty)&lt;/pre&gt;&lt;pre class="alt"&gt; proxy.ReplyMessage.Properties[&lt;span class="str"&gt;&amp;quot;httpResponse&amp;quot;&lt;/span&gt;]).Headers[&lt;span class="str"&gt;&amp;quot;Date&amp;quot;&lt;/span&gt;];&lt;/pre&gt;&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre class="alt"&gt;DateTime fecha = DateTime.Parse(fechaHeader);&lt;/pre&gt;&lt;/div&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }


&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;El problema que le veo a todo esto es que la respuesta Http venga como una propiedad indexada de esa forma, lo que no me da mucha confianza en que esta funcionalidad se pueda perder en futuras versiones de .NET Compact Framework, ya veremos...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=91916" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /></entry><entry><title>Dll de mensajes de error de .NET Compact Framework 3.5</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/06/04/dll-de-mensajes-de-error-de-net-compact-framework-3-5.aspx" /><id>/blogs/amezcua/archive/2008/06/04/dll-de-mensajes-de-error-de-net-compact-framework-3-5.aspx</id><published>2008-06-04T17:33:29Z</published><updated>2008-06-04T17:33:29Z</updated><content type="html">&lt;p&gt;Recientemente, trabajando con .NET Compact Framework 3.5 en un terminal en español, al producirse una excepción en el código&amp;nbsp; me he encontrado con el siguiente error:&lt;/p&gt; &lt;p&gt;&lt;em&gt;Hay un mensaje de error disponible para esta excepción, pero no se puede mostrar porque estos mensajes son opcionales y no están instalados en este dispositivo. Instale ‘NETCFv35.Messages.ES.wm.cab’ para Windows Mobile 5.0 y posterior, o&amp;nbsp; ‘NETCFv35.Messages.ES.cab’ para otras plataformas. Reinicie la aplicación para ver el mensaje.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;El mensaje parece claro, faltan las Dll&amp;#39;s de mensajes de error que están en los cabs indicados, con lo que parece que si instalación debería solucionarlo; &lt;strong&gt;pero la instalación de cualquiera de esos cabs no lo soluciona&lt;/strong&gt;, siguiendo el error y la imposibilidad de saber rápidamente la razón de ser de la excepción.&lt;/p&gt; &lt;p&gt;Después de darme un par de veces (o tres) con la cabeza en el monitor &lt;a href="http://blogs.msdn.com/martijnh/archive/2008/01/03/fixing-exception-messages-on-the-net-compact-framework-3-5.aspx" target="_blank"&gt;encontré la solución&lt;/a&gt; buscando en Google el nombre del archivo .cab pero en su versión en inglés (NETCFv35.Messages.EN.wm.cab). Por mucho que se instale el cab no se va a solucionar el problema, pero si se descomprime el cab en cualquier sitio del PC, se toma el archivo &lt;strong&gt;&amp;#39;SYCCFA~1.001&amp;#39;&lt;/strong&gt; y se renombra a &lt;strong&gt;&amp;#39;System.SR.dll&amp;#39;&lt;/strong&gt; y luego en el proyecto en el que se esté trabajando se hace una referencia a esta dll, los mensajes de ayuda de la excepción volverán a aparecer correctamente.&lt;/p&gt; &lt;p&gt;Espero que os sea útil.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=87912" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /></entry><entry><title>Sync Services for ADO.NET vs. Sync Framework vs. ... ¿Live Mesh?</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/04/24/sync-services-for-ado-net-vs-sync-framework-vs-191-live-mesh.aspx" /><id>/blogs/amezcua/archive/2008/04/24/sync-services-for-ado-net-vs-sync-framework-vs-191-live-mesh.aspx</id><published>2008-04-24T10:19:30Z</published><updated>2008-04-24T10:19:30Z</updated><content type="html">&lt;p&gt;Sync, sync, sync...&lt;/p&gt; &lt;p&gt;El panorama de los sistemas de sincronización ofrecidos por Microsoft ultimamente crece muy rápidamente lo que nos deja a los programadores con la duda de qué sistema escoger y si hemos hecho bien al escoger uno u otro. Desde siempre ha existido en Windows el servicio de replicación de ficheros, usado normalmente por los adminitradores de la red para replicar archivos relacionados con los perfiles de usuario y demás. Aunque es un servicio de replicación genérico, no es común verlo en otros escenarios.&lt;/p&gt; &lt;p&gt;En el caso de replicación de datos de una base de datos, SQL Server ofrece desde hace mucho tiempo sus propios mecanismos de replicación. Merge, que funciona en modo de publicador-suscriptor permite que un servidor publique datos y que otros se suscriban a los mismos para recibir copias de la información. Este mecanismo está disponible también para replicar datos a SQL Server Compact Edition (SQLCE) muy usado en dispositivos móviles. Funciona muy bien pero todo el control está en manos del administrador del servidor de base de datos lo que crea en algunos casos problemas con los desarrolladores. Por otro lado existe RDA (Remote Data Access), útil para replicar datos igualmente entre SQL Server y SQLCE. Es un sistema más ligero, que no requiere configuración especial del servidor de base de datos ya que a éste sólo se le pasan consultas, pero ofrece menos posibilidades que el anterior en cuanto a seguimiento de los datos y resolución de conflictos. Estos dos sistemas además tienen la pega de que sólo funcionan con SQL Server y no con ningún otro tipo de bases de datos.&lt;/p&gt; &lt;p&gt;Recientemente han aparecido otros dos nuevos mecanismos de replicación, orientados a los desarrolladores pricipalmente.&lt;/p&gt; &lt;p&gt;Sync Services for ADO.NET permite replicar datos entre dos sistemas para los que existan proveedores ADO.NET permitiendo por ejemplo la replicación de datos entre SQLCE y Oracle o cualquier otro escenario similar. La idea inicial de este entorno es la de sustituir RDA mejorándolo en muchos aspectos. Este entorno &lt;a href="http://www.microsoft.com/Downloads/details.aspx?familyid=75FEF59F-1B5E-49BC-A21A-9EF4F34DE6FC&amp;amp;displaylang=en" target="_blank"&gt;está ya disponible también para dispositivos móviles&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;A continuación, y siguiendo la misma filosofía, aparece &lt;a href="http://msdn2.microsoft.com/en-us/sync/default.aspx" target="_blank"&gt;Sync Framework&lt;/a&gt;. Este es un entorno más general, que engloba al anterior, y cuyo objetivo es el de &lt;strong&gt;permitir la sincronización de cualquier fuente de datos&lt;/strong&gt;, sean bases de datos u otra cosa. De hecho en su primera versión pública se incluye a &amp;quot;Sync Services for ADO.NET&amp;quot;, a &amp;quot;Sync Services for File Systems&amp;quot; y a &amp;quot;Sync Services for FeedSync&amp;quot;, permitiendo la sicronización respectivamente de dos fuentes cualquiera de bases de datos para las que tengamos un proveedor ADO.NET, la sincronización de ficheros entre dos puntos, o la sincronización de &amp;quot;feeds&amp;quot; RSS o ATOM entre dos puntos. Como se puede imaginar lo que se proporciona es un mecanismo mediante el cual, si disponemos de los &lt;strong&gt;proveedores adecuados&lt;/strong&gt;, se podrá &lt;em&gt;sincronizar cualquier cosa sincronizable&lt;/em&gt;. Microsoft proporcionará inicialmente unos proveedores pero se le deja al programador la libertad de programarse sus propios proveedores para sincronizar cualquier tipo de información.&lt;/p&gt; &lt;p&gt;Finalmente se acaba de anunciar el lanzamiento de &lt;a href="https://www.mesh.com/" target="_blank"&gt;Live Mesh&lt;/a&gt;, siendo uno de sus objetivos la sincronización de datos. Según la información publicada, incialmente es capaz de sincronizar archivos de forma muy similar a como lo hace &lt;a href="http://office.microsoft.com/es-es/groove/HA101656333082.aspx" target="_blank"&gt;Groove&lt;/a&gt;, conectando dos o más puntos a través de Internet de forma transparente. Pero según se comenta, toda la plataforma estará disponible para que los desarrolladores puedan crear aplicaciones que sean capaces de sincronizar cualquier tipo de datos de forma igualmente transparente con lo que podría usarse en principio como sustituto de los métodos mencionados anteriormente. Si esto es así, este mecanismo tiene una gran ventaja con respecto a los anteriores. En los anteriores es necesaria una conexión explícila entre los puntos que sincronizan que sea direccionable, es decir, necesito saber desde el origen la dirección IP de destino. En el caso de Mesh, la localización de los diferentes dispositivos es transparente y se podrían sincronizar datos &lt;strong&gt;entre equipos que estén localizados tras NATs y firewalls&lt;/strong&gt; sin problema lo que proporciona muchas ventajas a la hora de sincronizar datos sobre todo para dispositivos móviles.&lt;/p&gt; &lt;p&gt;En fin, cada vez hay más y más opciones. Esperemos a las versiones finales a ver cómo se consolidan las diferentes ofertas de sincronización.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=84156" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Microsoft" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Microsoft/default.aspx" /><category term=".NET" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET/default.aspx" /></entry><entry><title>WCF y transporte basado en Exchange 2007. Ejemplo para PC y .NET Compact Framework 3.5 del evento TechDays</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/02/28/wcf-y-transporte-basado-en-exchange-2007-ejemplo-para-pc-y-net-compact-framework-3-5-del-evento-techdays.aspx" /><id>/blogs/amezcua/archive/2008/02/28/wcf-y-transporte-basado-en-exchange-2007-ejemplo-para-pc-y-net-compact-framework-3-5-del-evento-techdays.aspx</id><published>2008-02-28T17:58:06Z</published><updated>2008-02-28T17:58:06Z</updated><content type="html">&lt;p&gt;Al igual que &lt;a href="http://www.byteabyte.net/2008/02/28/WCFYNETCompactFramework35EjemploDeQuotLugaresVisitadosquotDelEventoTechDays.aspx" target="_blank"&gt;el ejemplo anterior&lt;/a&gt;, ya est&amp;#225;n disponibles tanto &lt;a href="http://www.byteabyte.net/content/binary/wcfexchangeppt.zip" target="_blank"&gt;la presentaci&amp;#243;n (en formato de Office 2007)&lt;/a&gt; como &lt;a href="http://www.byteabyte.net/content/binary/wcfexchangesample.zip" target="_blank"&gt;la aplicaci&amp;#243;n de ejemplo &amp;quot;eLoc&amp;quot; (proyectos de Visual Studio 2008)&lt;/a&gt; de la sesi&amp;#243;n impartida en el evento de Microsoft TechDays del martes pasado (26 de Febrero).&lt;/p&gt;  &lt;p&gt;Este ejemplo muestra el uso del transporte &lt;a href="http://www.byteabyte.net/2007/08/21/CaracteriacutesticasDeWCFIncluidasEnNETCompactFramework35.aspx" target="_blank"&gt;WCF basado en Microsft Exchange 2007 tanto en un entorno de PC con .NET Framework 3.5 como en un entorno de Windows Mobile&lt;/a&gt;, con .NET Compact Framework 3.5.&lt;/p&gt;  &lt;p&gt;Para aquellos que quieran probar los ejemplos, van a necesitar lo siguiente:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font face="Segoe UI"&gt;Un servidor Exchange 2007 (si es SP1 mejor)&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Dos buzones creados, uno de ellos con acceso por ActiveSync&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Un terminal Windows Mobile (o emulador) con uno de los buzones anteriores configurado para su sincronizaci&amp;#243;n mediante ActiveSync&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Un PC en el que configurar la aplicaci&amp;#243;n Windows Forms con acceso al servidor Exchange.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Un certificado para SSL de comunicaci&amp;#243;n con el servidor Exchange&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Configurar tanto el PC como el terminal Windows Mobile para que acepten el certificado raiz del certificado SSL. Si es un certificado comprado a Verisign o alguna entidad similar no ser&amp;#225; necesario hacer nada. Si es un certificado propio, el certificado ra&amp;#237;z deber&amp;#225; estar configurado en el store de &amp;quot;Trusted Roots&amp;quot; del PC y del dispositivo Windows Mobile.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font face="Segoe UI"&gt;Un dispositivo GPS/GSM si se quiere probar la funcionalidad en vivo. Si no, este dispositivo no es necesario y se puede probar WCF para Exchange simulando el mensaje de respuesta.&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;El escenario presentado por el ejemplo es el de poder localizar a un terminal GPS remoto (con capacidad de GSM) mediante un mensaje SMS (&amp;#250;til por ejemplo en el caso de un equipo de personas que trabajen en un servicio de emergencias). La solicitud de localizaci&amp;#243;n se puede enviar tanto desde la aplicaci&amp;#243;n de la &amp;#39;central&amp;#39; como desde el terminal Windows Mobile. El terminal GPS, una vez recibido el SMS, devuelve otro SMS al dispositivo Windows Mobile, quien, a su vez, env&amp;#237;a un mensaje WCF mediante Exchange a la aplicaci&amp;#243;n de la &amp;#39;central&amp;#39;, que mostrar&amp;#225; la localizaci&amp;#243;n del terminal GPS en un mapa de Virtual Earth.&lt;/p&gt;  &lt;p&gt;Existen diversos terminales de GPS/GSM en el mercado de forma que en el c&amp;#243;digo no se ha incluido ningun mensaje espec&amp;#237;fico para ninguno de ellos. Si el lector cuenta con uno de esos terminales tendr&amp;#225; que establecer el texto del SMS a enviar en la clase Localizador y configurar el c&amp;#243;digo del MessageInterceptor en el formulario principal de la aplicaci&amp;#243;n Windows Mobile para capturar los mensajes SMS recibidos.&lt;/p&gt;  &lt;p&gt;Como no es com&amp;#250;n que se disponga de estos terminales, se puede probar la funcionalidad en la aplicaci&amp;#243;n de Windows Mobile sin necesidad de tener uno de ellos ya que &amp;#233;sta dispone de un bot&amp;#243;n que pemite enviar una respuesta simulada.&lt;/p&gt;  &lt;p&gt;Una vez configurado esto, la soluci&amp;#243;n Visual Studio 2008 cuenta con tres proyectos:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Un proyecto Web que dispone de dos p&amp;#225;ginas, una con un mensaje de espera y otra que muestra en un mapa la localizaci&amp;#243;n de un GPS encontrado. Esta aplicaci&amp;#243;n Web se usar&amp;#225; integrada en el cliente de la &amp;#39;central&amp;#39;. &lt;/li&gt;    &lt;li&gt;Un proyecto .NET Compact Framework 3.5 que env&amp;#237;a y recibe mensajes WCF mediante la conexi&amp;#243;n de ActiveSync. &lt;/li&gt;    &lt;li&gt;Un proyecto .NET Framework 3.5 que env&amp;#237;a y recibe mensajes WCF mediante los servicios Web de Exchange 2007. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Para terminar de configurar el c&amp;#243;digo, el lector deber&amp;#225; modificar los par&amp;#225;metros de cuentas de correo, usuarios y contrase&amp;#241;as y n&amp;#250;meros de tel&amp;#233;fono (si se va a usar el GPS real) en el c&amp;#243;digo para adecuarlos a su entorno. Los par&amp;#225;metros son cadenas de texto encontradas en las clases &amp;#39;MainForm&amp;#39; de cada uno de los proyectos.&lt;/p&gt;  &lt;p&gt;Gracias a todos los asistentes su participaci&amp;#243;n y espero que los ejemplos les resultasen interesantes.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=75332" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /><category term="Eventos" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Eventos/default.aspx" /></entry><entry><title>WCF y .NET Compact Framework 3.5, ejemplo de "LugaresVisitados" del evento TechDays</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/02/28/wcf-y-net-compact-framework-3-5-ejemplo-de-quot-lugaresvisitados-quot-del-evento-techdays.aspx" /><id>/blogs/amezcua/archive/2008/02/28/wcf-y-net-compact-framework-3-5-ejemplo-de-quot-lugaresvisitados-quot-del-evento-techdays.aspx</id><published>2008-02-28T16:29:25Z</published><updated>2008-02-28T16:29:25Z</updated><content type="html">&lt;p&gt;Ya est&amp;#225;n disponibles &lt;a href="http://www.byteabyte.net/content/binary/lugaresvisitadosppt.zip" target="_blank"&gt;la presentaci&amp;#243;n (en formato de Office 2007)&lt;/a&gt; y la &lt;a href="http://www.byteabyte.net/content/binary/lugaresvisitadossample.zip" target="_blank"&gt;aplicaci&amp;#243;n de ejemplo &amp;quot;LugaresVisitados&amp;quot; (proyectos de Visual Studio 2008)&lt;/a&gt; de la sesi&amp;#243;n pr&amp;#225;ctica impartida en el evento de Microsoft TechDays del martes pasado (26 de Febrero).&lt;/p&gt;  &lt;p&gt;La soluci&amp;#243;n de Visual Studio de ejemplo consta de dos proyectos, una aplicaci&amp;#243;n .NET Compact Framework 3.5 y una aplicaci&amp;#243;n servidor basada en ASP.NET (con .NET Framework 3.5)&lt;/p&gt;  &lt;p&gt;La aplicaci&amp;#243;n cliente permite tomar una foto con la c&amp;#225;mara de fotos de un terminal Windows Mobile, a&amp;#241;adirle unas notas y, si hay un GPS conectado, asociarle a la foto unas coordenadas. Una vez tomada la foto y definidas las notas la aplicaci&amp;#243;n, &amp;#233;sta puede ser subida al servidor Web donde quedar&amp;#225; almacenada. Para quellos que se instalen el ejemplo, lo primero que han de hacer es modificar el archivo de configuraci&amp;#243;n &amp;quot;config.txt&amp;quot; (en formato XML) para establecer un nombre de un puerto de serie correcto para el GPS y una URL v&amp;#225;lida de conexi&amp;#243;n al servicio Web.&lt;/p&gt;  &lt;p&gt;La aplicaci&amp;#243;n servidora es una aplicaci&amp;#243;n ASP .NET que permite visualizar las fotos, taanto en una lista como individualmente y, para aquellas fotos que tengan asociadas coordenadas GPS, visualizarlas adem&amp;#225;s en un mapa de Virtual Earth. En esta aplicaci&amp;#243;n hay dos servicios Web WCF definidos. El primero permite subir las fotos al servidor (FotoUploader.svc) y el segundo permite obtener la lista de fotos que tienen coordenadas GPS asociadas (FotosCoordenadas.svc). Este &amp;#250;ltimo servicio existe para poder ser invocado desde JavaScript, desde la p&amp;#225;gina que tiene el mapa de Virtual Earth obteniendo los datos en formato JSON.&lt;/p&gt;  &lt;p&gt;Es conveniente revisar la presentaci&amp;#243;n para ver qu&amp;#233; par&amp;#225;metros de configuraci&amp;#243;n de los servicios WCF se han establecido en el archivo Web.Config de la aplicaci&amp;#243;n Web para configurar el sistema tal como funciona.&lt;/p&gt;  &lt;p&gt;Por otro lado, para poder crear aplicaciones cliente en .NET Compact Framework para este tipo de servicios WCF, hay que recordar que es necesario instalarse los &lt;a href="http://www.byteabyte.net/2007/09/13/PowerToysParaNETCompactFramework35.aspx" target="_blank"&gt;Power Toys para .NET Compact Framework 3.5&lt;/a&gt;, que incluyen, entre otras cosas, la utilidad &amp;quot;netcfsvcutil.exe&amp;quot; que es la que permite la generaci&amp;#243;n del proxy que realiza la llamada al servicio Web.&lt;/p&gt;  &lt;p&gt;Quiro agradecer a todos los asistentes su participaci&amp;#243;n y espero que los ejemplos les resultasen interesantes.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=75296" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /><category term="Eventos" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Eventos/default.aspx" /></entry><entry><title>Artículo: Novedades para desarrolladores en Windows Mobile 6</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/02/14/art-237-culo-novedades-para-desarrolladores-en-windows-mobile-6.aspx" /><id>/blogs/amezcua/archive/2008/02/14/art-237-culo-novedades-para-desarrolladores-en-windows-mobile-6.aspx</id><published>2008-02-14T09:54:30Z</published><updated>2008-02-14T09:54:30Z</updated><content type="html">&lt;p&gt;He replicado un art&amp;#237;culo que apareci&amp;#243; originalmente en la revista PC World de Julio-Agosto de 2007 con el t&amp;#237;tulo original de &amp;quot;Desarrollando &amp;#39;On the road&amp;#39; con Windows Mobile 6&amp;quot;.&lt;/p&gt;  &lt;p&gt;En este art&amp;#237;culo se comentan las novedades incluidas en la plataforma y en los SDKs de Windows Mobile 6 y se desarrolla una peque&amp;#241;a aplicaci&amp;#243;n paso a paso de la que el c&amp;#243;digo est&amp;#225; disponible para su descarga.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.byteabyte.net/verarticulo.aspx?art=novedadesWM6.xml" target="_blank"&gt;Pod&amp;#233;is acceder al art&amp;#237;culo completo aqu&amp;#237;&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=71421" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Artículos" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Art_ED00_culos/default.aspx" /></entry><entry><title>Sony Ericsson se apunta al carro de Windows Mobile</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/02/11/sony-ericsson-se-apunta-al-carro-de-windows-mobile.aspx" /><id>/blogs/amezcua/archive/2008/02/11/sony-ericsson-se-apunta-al-carro-de-windows-mobile.aspx</id><published>2008-02-11T07:02:06Z</published><updated>2008-02-11T07:02:06Z</updated><content type="html">&lt;p&gt;Se acaba de anunciar un nuevo modelo de tel&amp;#233;fono de Sony-Ericsson, el &lt;a href="http://www.sonyericsson.com/cws/corporate/press/pressreleases/pressreleasedetails/globalx1-20080210" target="_blank"&gt;XPERIA X1&lt;/a&gt;, que vendr&amp;#225; con Windows Mobile. Al parecer el terminal est&amp;#225; fabricado por HTC (c&amp;#243;mo no) y ser&amp;#225; el primero de una nueva l&amp;#237;nea de m&amp;#243;viles de Sony Ericsson con este nuevo sistema operativo para ellos. El terminal parece bastante completo, e incorpora un nuevo UI que, si funciona como aparece en el v&amp;#237;deo promocional, quiere competir directamente con el UI del iPhone.&lt;/p&gt;  &lt;p&gt;El movimiento resulta bastante interesante ya que Sony Ericsson es uno de los fabricantes que m&amp;#225;s apoya (apoyaba?) Symbian en su l&amp;#237;nea UIQ. Por lo que parece, de entre todos los fabricantes grandes de m&amp;#243;viles, ya s&amp;#243;lo falta Nokia por unirse al carro de Windows Mobile; aunque ha licenciado parte de sus tecnolog&amp;#237;as, eso s&amp;#237;.&lt;/p&gt;  &lt;p&gt;Por experiencia os puedo decir que, desde el punto de vista del programador, nos ahorrar&amp;#237;an muchos dolores de cabeza si lo hicieran.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=70535" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Windows Mobile" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Windows+Mobile/default.aspx" /></entry><entry><title>PointUI. Interesante reemplazo del Home Screen de Windows Mobile</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2008/01/02/pointui-interesante-reemplazo-del-home-screen-de-windows-mobile.aspx" /><id>/blogs/amezcua/archive/2008/01/02/pointui-interesante-reemplazo-del-home-screen-de-windows-mobile.aspx</id><published>2008-01-02T20:36:42Z</published><updated>2008-01-02T20:36:42Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.pointui.com/" target="_blank"&gt;Aqu&amp;#237; ten&amp;#233;is una interesante aplicaci&amp;#243;n gratuita&lt;/a&gt; (de momento) para los usuarios de Windows Mobile 5/6. Se trata de una utilidad que reemplaza en cierto modo al Home Screen de un Pocket PC, aunque no lo deshabilita. Visualmente es muy agradable con animaciones y transiciones muy interesantes (que me &lt;a href="http://community.opennetcf.com/competition/folders/sept07/default.aspx" target="_blank"&gt;recuerdan mucho a FlowFX&lt;/a&gt;, la entrada presentada en el primer concurso de desarrollo de OpenNETCF Community). Desde el punto de vista del uso, est&amp;#225; pensada para ser utilizada principalmente con el dedo, aunque funciona bien con las teclas de desplazamiento. Veremos c&amp;#243;mo evoluciona ya que a&amp;#250;n es un proyecto reciente, pero no tiene mala pinta.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=60890" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Windows Mobile" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Windows+Mobile/default.aspx" /><category term="Aplicaciones" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Aplicaciones/default.aspx" /></entry><entry><title>Me encanta LINQ to XML</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2007/12/31/me-encanta-linq-to-xml.aspx" /><id>/blogs/amezcua/archive/2007/12/31/me-encanta-linq-to-xml.aspx</id><published>2007-12-31T09:12:00Z</published><updated>2007-12-31T09:12:00Z</updated><content type="html">&lt;p&gt;Hasta ahora no había realizado más que pequeñas pruebas de LINQ, pero recientemente he cambiado de proveedor de hosting (al &lt;a href="http://www.discountasp.com/index.aspx?refcode=ALMBYTE" target="_blank"&gt;de momento magnífico discountASP&lt;/a&gt;) que ya proporciona soporte para .NET 3.5 y me he decidido a usarlo un poco más.&lt;/p&gt;
&lt;p&gt;En concreto he creado &lt;a href="http://www.byteabyte.net/CategoryView,category,links.aspx" target="_blank"&gt;una nueva página de links&lt;/a&gt;, donde he puesto de momento los links que tengo alojados en del.icio.us y mis elementos compartidos de Google Reader, que es el lector RSS que utilizo.&lt;/p&gt;
&lt;p&gt;Tanto del.icio.us como Google Reader proporcionan acceso a los elementos públicos mediante una URL que ofrece un documento RSS en el primer caso (&lt;a title="http://del.icio.us/rss/amezcua" href="http://del.icio.us/rss/amezcua" target="_blank"&gt;http://del.icio.us/rss/amezcua&lt;/a&gt;) y un documento ATOM en el segundo (&lt;a title="http://www.google.com/reader/public/atom/user/06770480527490995101/state/com.google/broadcast" href="http://www.google.com/reader/public/atom/user/06770480527490995101/state/com.google/broadcast" target="_blank"&gt;http://www.google.com/reader/public/atom/user/06770480527490995101/state/com.google/broadcast&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Teniendo esto en cuenta, el funcionamiento de la página es realmente sencillo. Sin entrar en detalles los pasos realizados son:&lt;/p&gt;
&lt;p&gt;1º Al cargar la página se obtiene un documento XML a partir de la URL para cada uno de los documentos anteriores. Esto es tan sencillo como:&lt;/p&gt;&lt;pre class="csharpcode"&gt;XDocument xmlDoc = XDocument.Load(urlServicio);&lt;/pre&gt;
&lt;p&gt;2º Una vez se dispone del documento se obtiene, mediante una consulta LINQ, una colección de elementos extrayendo los datos deseados del XML original. Por ejemplo, para el caso de del.icio.us se quiere obtener una colección de objetos con dos campos, &amp;#39;title&amp;#39; y &amp;#39;url&amp;#39;:&lt;/p&gt;&lt;pre class="csharpcode"&gt;var itemList = from item &lt;span class="kwrd"&gt;in&lt;/span&gt; xmlDoc.Descendants(&lt;span class="str"&gt;&amp;quot;{http://purl.org/rss/1.0/}item&amp;quot;&lt;/span&gt;)
     select &lt;span class="kwrd"&gt;new&lt;/span&gt;
     {
             title = (&lt;span class="kwrd"&gt;string&lt;/span&gt;)item.Element(&lt;span class="str"&gt;&amp;quot;{http://purl.org/rss/1.0/}title&amp;quot;&lt;/span&gt;),
             url = (&lt;span class="kwrd"&gt;string&lt;/span&gt;)item.Element(&lt;span class="str"&gt;&amp;quot;{http://purl.org/rss/1.0/}link&amp;quot;&lt;/span&gt;)
     };&lt;/pre&gt;
&lt;p&gt;3º Cuando se tiene la colección creada (itemList) se puede utilizar DataBinding para vincular esta lista de elementos a cualquier control. En mi caso lo he vinculado a un control DataList. En el control DataList simplemente se especifica que se quieren mostrar los campos &amp;#39;title&amp;#39; y &amp;#39;url&amp;#39; definidos antes:&lt;/p&gt;&lt;pre class="csharpcode"&gt;dlDelIcioUsItems.DataSource = itemList;
dlDelIcioUsItems.DataBind();&lt;/pre&gt;
&lt;p&gt;Como se puede ver hay, sin contar el control de errores, 4 líneas de código para cargar un documento XML remoto y mostrarlo en una página Web, bastante impresionante, teniendo en cuenta que para hacer algo similar hasta ahora lo que hacía era disponer de una clase que defina la estructura del documento, cargar el XML remoto en un XmlReader, deserializar el documento a la clase y finalmente obtener la colección de items interna de esa clase.&lt;/p&gt;
&lt;p&gt;Una de las cosas que hay que destacar es el uso de los namespaces de XML. Como se ve en la consulta LINQ, para acceder a cada uno de los elementos del documento hay que especificar el namespace XML en el que se encuentra&lt;/p&gt;&lt;pre class="csharpcode"&gt;{http://purl.org/rss/1.0/}&lt;/pre&gt;
&lt;p&gt;lo que define completamente al elemento XML concreto. Esta sintaxis, tal como está en el ejemplo, no me acaba de gustar, así que se puede mejorar de la siguiente forma:&lt;/p&gt;&lt;pre class="csharpcode"&gt;XNamespace deliciousNS = &lt;span class="str"&gt;&amp;quot;http://purl.org/rss/1.0/&amp;quot;&lt;/span&gt;;

var itemList = from item &lt;span class="kwrd"&gt;in&lt;/span&gt; xmlDoc.Descendants(deliciousNS + &lt;span class="str"&gt;&amp;quot;item&amp;quot;&lt;/span&gt;)
     select &lt;span class="kwrd"&gt;new&lt;/span&gt;
     {
             title = (&lt;span class="kwrd"&gt;string&lt;/span&gt;)item.Element(deliciousNS + &lt;span class="str"&gt;&amp;quot;title&amp;quot;&lt;/span&gt;),
             url = (&lt;span class="kwrd"&gt;string&lt;/span&gt;)item.Element(deliciousNS + &lt;span class="str"&gt;&amp;quot;link&amp;quot;&lt;/span&gt;)
     };&lt;/pre&gt;
&lt;p&gt;En este caso se define un objeto XNamespace con el namespace adecuado y se utiliza en todos aquellos sitios donde se necesite especificar el nombre completo del elemento. Como el tipo XNamespace sobrecarga el operador &amp;#39;+&amp;#39; se puede usar simplemente añadiendo entre comillas el nombre del elemento XML. Esto no se encuentra en la mayoría de los ejemplos publicados por ahí sobre LINQ to XML, donde se utilizan documentos XML sin definición de namespaces, cosa que no es muy habitual en el mundo real ¿no?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=60380" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term="Web" scheme="http://geeks.ms/blogs/amezcua/archive/tags/Web/default.aspx" /><category term=".NET" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET/default.aspx" /></entry><entry><title>Introducción al CLR Profiler de .NET Compact Framework</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2007/10/18/introducci-243-n-al-clr-profiler-de-net-compact-framework.aspx" /><id>/blogs/amezcua/archive/2007/10/18/introducci-243-n-al-clr-profiler-de-net-compact-framework.aspx</id><published>2007-10-18T04:41:01Z</published><updated>2007-10-18T04:41:01Z</updated><content type="html">&lt;p&gt;Desde hace tiempo existe una herramienta en .NET Framework llamada CLR Profiler que permite examinar el heap de memoria del recolector de basura de .NET de una forma gráfica con el objetivo de ayudar en la búsqueda de problemas relacionados con el uso de memoria en las aplicaciones.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.ms/blogs/unai/" target="_blank"&gt;Unai&lt;/a&gt; y yo enseñamos el uso de la herramienta en el último Code Camp en Huelva, entre otas cosas.&lt;/p&gt; &lt;p&gt;Esta utilidad se ha portado a .NET Compact Framework con la llegada de la nueva versión y está disponible como un &lt;a href="http://geeks.ms/blogs/amezcua/archive/2007/09/13/power-toys-para-net-compact-framework-3-5.aspx" target="_blank"&gt;Power Toy junto con otras herramientas&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Steven Pratschner acaba de publicar &lt;a href="http://blogs.msdn.com/stevenpr/archive/2007/10/17/the-clrprofiler-for-the-net-compact-framework-part-1-getting-started.aspx" target="_blank"&gt;el primero de una serie de artículos&lt;/a&gt; dedicados a explicar con detalle el funcionamiento de la herramienta utilizando una aplicación de ejemplo como guía.&lt;/p&gt; &lt;p&gt;Si sospechas que tienes algún problema de consumo de memoria en tu aplicación .NET te recomiendo que leas estos artículos que te ayudarán a intentar localizar dónde está la causa.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=43281" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /></entry><entry><title>Power Toys para .NET Compact Framework 3.5</title><link rel="alternate" type="text/html" href="/blogs/amezcua/archive/2007/09/13/power-toys-para-net-compact-framework-3-5.aspx" /><id>/blogs/amezcua/archive/2007/09/13/power-toys-para-net-compact-framework-3-5.aspx</id><published>2007-09-13T05:14:25Z</published><updated>2007-09-13T05:14:25Z</updated><content type="html">&lt;p&gt;Con las primeras betas de .NET Compact Framework 3.5 se&amp;nbsp;incluían una serie de utilidades que han desaparecido de la distribución encontrada en Visual Studio 2008. Estas&amp;nbsp;aplicaciones &lt;a title="Descarga de los Power Toys para .NET Compact Framework 3.5 (Septiembre de 2007) en MSDN" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C8174C14-A27D-4148-BF01-86C2E0953EAB&amp;amp;displaylang=en" target="_blank"&gt;se distribuyen ahora en un paquete de instalación independiente&lt;/a&gt; y su versión definitiva saldrá cuando se libere Visual Studio 2008 (actualmente están en versión beta también). Estas herramientas son:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Remote Performance Monitor, GC Heap Viewer y CLR Profiler. &lt;/strong&gt;Permiten capturar métricas de rendimiento de aplicaciones para su análisis posterior así como capturas del estado de memoria de una aplicación .NET en un momento dado. Son muy útiles para verificar el uso de recursos por parte de las aplicaciones y depurar así su rendimiento, así como para capturar posibles problemas de leaks de memoria y similares.  &lt;li&gt;&lt;strong&gt;Application Configuration Tool (NetCFcfg.exe). &lt;/strong&gt;Esta utilidad permite especificar la versión de .NET Compact Framework con la que se quiere que se ejecute una determinada aplicación .NET en caso de que se tengan varias versiones instaladas en el dispositivo. Por ejemplo se puede haber desarrollado una aplicación con .NET CF 2.0 pero se ha actualizado el sistema y se quiere forzar a que esa aplicación concreta se ejecute con la versión 3.5, aunque la 2.0 sigue instalada también. Esta herramienta se ejecuta directamente en el dispositivo.  &lt;li&gt;&lt;strong&gt;NETCF Service Metadata Tool.&lt;/strong&gt; Con esta utilidad se pueden generar clases proxy para su uso con Windows Communication Foundation para .NET Compact Framework. Es el equivalente de svcutil.exe en el PC.  &lt;li&gt;&lt;strong&gt;Remote logging configuration tool&lt;/strong&gt;. Esta herramienta permite configurar la creación de archivos de log que incluyan información la carga, errores, uso de interop, utilización de la red y ejecución de finalizadores de aplicaciones .NET. Estos logs son muy útiles para la detección de posibles problemas cuando una aplicación está en fase de pruebas.  &lt;li&gt;&lt;strong&gt;NETCF Network log viewer&lt;/strong&gt;. Utilidad para la visualización de los logs de uso de red obtenidos con la herramienta anterior.&lt;/li&gt;&lt;/ul&gt; &lt;blockquote&gt; &lt;p&gt;(obtenido del &lt;a href="http://blogs.msdn.com/netcfteam/archive/2007/09/12/power-toys-for-net-compact-framework-3-5-ctp-released.aspx" target="_blank"&gt;blog del equipo de desarrollo de .NET CF&lt;/a&gt;)&lt;/p&gt;&lt;/blockquote&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=34263" width="1" height="1"&gt;</content><author><name>amezcua</name><uri>http://geeks.ms/members/amezcua/default.aspx</uri></author><category term=".NET Compact Framework" scheme="http://geeks.ms/blogs/amezcua/archive/tags/.NET+Compact+Framework/default.aspx" /></entry></feed>
