<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-709008391091394713</id><updated>2012-01-25T14:19:08.700-04:30</updated><category term='Threading'/><category term='Contacto'/><category term='Libros'/><category term='Visual Studio'/><category term='.Net 4.0'/><category term='C++/CLI'/><category term='Miscelaneos'/><category term='System'/><category term='jQuery'/><category term='Microsoft'/><category term='Windows 8'/><category term='Kinect'/><category term='Javascript'/><category term='.Net'/><category term='Sql Server'/><category term='Desarrollo de juegos'/><category term='Servicios'/><category term='WP7'/><category term='Chistes'/><category term='Reflection'/><category term='General'/><category term='Cursos'/><category term='Noticias'/><category term='Drawing'/><category term='Networking'/><category term='Software'/><category term='Eventos'/><category term='Seguridad'/><category term='Opinión'/><category term='Downloads'/><category term='Exceptions'/><category term='Blog'/><category term='Avanzado'/><title type='text'>..:: El blog de Juan ::..</title><subtitle type='html'>Un blog dedicado a todos los programadores y amantes de la tecnología.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.andreujuan.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>69</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2073423548063494139</id><published>2011-08-05T10:21:00.000-04:30</published><updated>2011-08-05T10:21:23.181-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Chistes'/><title type='text'>La guerra entre desarrolladores, diseñadores y directivos.</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://d24w6bsrhbeh9d.cloudfront.net/photo/189736_460s.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://d24w6bsrhbeh9d.cloudfront.net/photo/189736_460s.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2073423548063494139?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2073423548063494139/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/08/la-guerra-entre-desarrolladores.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2073423548063494139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2073423548063494139'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/08/la-guerra-entre-desarrolladores.html' title='La guerra entre desarrolladores, diseñadores y directivos.'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3915249211805734859</id><published>2011-03-30T03:22:00.000-04:30</published><updated>2011-03-30T03:22:08.497-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows 8'/><title type='text'>BSoD Ahora es Black Screen of Death</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;Me encontré con la noticia en wpcentral.com de que Windows 8 adoptará muchos aspectos del Metro Design. En esto claro está incluido el BSoD que ahora no es Blue, sino, Black. A continuación un Screenshot:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://s3.amazonaws.com/wpcms_production/resources/images/000/044/785/original/bsod-windows-8.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://s3.amazonaws.com/wpcms_production/resources/images/000/044/785/original/bsod-windows-8.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;A ver que otras sorpresas nos traerá Windows 8!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3915249211805734859?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3915249211805734859/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/03/bsod-ahora-es-black-screen-of-death.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3915249211805734859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3915249211805734859'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/03/bsod-ahora-es-black-screen-of-death.html' title='BSoD Ahora es Black Screen of Death'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3594816112299213962</id><published>2011-03-27T08:05:00.001-04:30</published><updated>2011-03-27T08:05:09.390-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Libros'/><title type='text'>Libros Recomendados para C#, VB, F#, VS IDE, y VS Extensibility</title><content type='html'>&lt;p&gt;Revisando un poco twitter, un twitt de MSDN me llevó a este enlace: &lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/b/lisa/archive/2011/03/26/visual-studio-2010-books-on-c-visual-basic-f-vs-ide-and-vs-extensibility.aspx" href="http://blogs.msdn.com/b/lisa/archive/2011/03/26/visual-studio-2010-books-on-c-visual-basic-f-vs-ide-and-vs-extensibility.aspx"&gt;http://blogs.msdn.com/b/lisa/archive/2011/03/26/visual-studio-2010-books-on-c-visual-basic-f-vs-ide-and-vs-extensibility.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ahí encontrarán una buena cantidad de libros en Amazon a buen precio, recomendados por msdn, y todos en sus ultimas versiones.&lt;/p&gt;  &lt;p&gt;Espero les sea de utilidad!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3594816112299213962?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3594816112299213962/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/03/libros-recomendados-para-c-vb-f-vs-ide.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3594816112299213962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3594816112299213962'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/03/libros-recomendados-para-c-vb-f-vs-ide.html' title='Libros Recomendados para C#, VB, F#, VS IDE, y VS Extensibility'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5489196835890013598</id><published>2011-03-24T15:41:00.001-04:30</published><updated>2011-03-24T15:41:43.083-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>Probando Script# – De C# a Javascript</title><content type='html'>&lt;p&gt;Estos dïas me he conseguido con Script#, que según viene con tiempo, nunca había escuchado sobre la herramienta.&lt;/p&gt;  &lt;p&gt;Script# Es una librería que compila código C# a Javascript. El cual funciona obviamente, entre todos los navegadores modernos. También hace que el mantenimiento de los scripts sean más mantenibles y escalables.&lt;/p&gt;  &lt;p&gt;Lo primero que hacemos es ir a la página principal: &lt;a title="http://projects.nikhilk.net/ScriptSharp" href="http://projects.nikhilk.net/ScriptSharp"&gt;http://projects.nikhilk.net/ScriptSharp&lt;/a&gt; y descargamos la última versión (0.6.3) para Visual Studio 2010. Ejecutamos el instalador y una vez finalizado el proceso abrimos Visual Studio.&lt;/p&gt;  &lt;p&gt;Vemos que hay una nueva categoría de proyectos (Script#), y varios tipos nuevos (Class Library, jQuery Class Library, jQuery Web Application, Web Application, Sidebar Gadget y Unit Test). Seleccionaremos para esta prueba un proyecto de tipo jQuery Web Application y aceptamos.&lt;/p&gt;  &lt;p&gt;Lo primero que notamos es que nos crea lo siguiente: &lt;/p&gt;  &lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 550px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;&lt;span style="color: #0000ff"&gt;internal&lt;/span&gt; &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; HomePage&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;{&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; HomePage()&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        jQuery.OnDocumentReady(&lt;span style="color: #0000ff"&gt;delegate&lt;/span&gt;()&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            &lt;span style="color: #008000"&gt;// Add script that runs once the document is ready for being&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            &lt;span style="color: #008000"&gt;// consumed by script.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        });&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    }&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;}&lt;/pre&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Como podemos ver, Script# es una especie de DOM en C# para JS, pero bien integrado a VS, bien programado y con buena documentación.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Ahora a probar:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 616px; padding-right: 5px; height: 493px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;&lt;span style="color: #0000ff"&gt;internal&lt;/span&gt; &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; HomePage&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;{&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; HomePage()&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        jQuery.OnDocumentReady(&lt;span style="color: #0000ff"&gt;delegate&lt;/span&gt;()&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            jQueryObject query = jQuery.Select(&amp;quot;&lt;span style="color: #8b0000"&gt;.mydiv&lt;/span&gt;&amp;quot;);&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            query.FadeIn(EffectDuration.Slow).Blur(&lt;span style="color: #0000ff"&gt;delegate&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;                Window.ShowModalDialog(&amp;quot;&lt;span style="color: #8b0000"&gt;Testing&lt;/span&gt;&amp;quot;, &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;, &amp;quot;&lt;span style="color: #8b0000"&gt;&lt;/span&gt;&amp;quot;);&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            });&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;                &lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        });&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    }&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;}&lt;/pre&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Al compilar, revisamos la carpeta “bin” del proyecto, y podemos ver el resultado. Aunque no es un DOM que transcribe las funciones, sino más bien, está todo sobre un framework de JS de ScriptC# que va, en este caso encima de otra capa que sería jQuery.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Código que se compila:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 550px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; executeScript(){&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;Type.registerNamespace('WebAppDemo.Home');WebAppDemo.Home._HomePage=&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){}&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;Type.registerNamespace('WebAppDemo.Shared');WebAppDemo.Shared._Utility=&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){}&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;WebAppDemo.Home._HomePage.registerClass('WebAppDemo.Home._HomePage');&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;WebAppDemo.Shared._Utility.registerClass('WebAppDemo.Shared._Utility');&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){$(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt; $1_0=$('.mydiv');$1_0.fadeIn('slow').&lt;span style="color: #0000ff"&gt;blur&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;&lt;span style="color: #0000ff"&gt;window&lt;/span&gt;.showModalDialog('Testing',&lt;span style="color: #0000ff"&gt;null&lt;/span&gt;,'');});});})();&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;}&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;ss.loader.registerScript('WebAppDemo.Home',[],executeScript);})();&lt;/pre&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Código en debbug, que sería el equivalente directo en JS.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 601px; padding-right: 5px; height: 269px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; () {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    $(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; query = $('.mydiv');&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        query.fadeIn('slow').&lt;span style="color: #0000ff"&gt;blur&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;            &lt;span style="color: #0000ff"&gt;window&lt;/span&gt;.showModalDialog('Testing', &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;, '');&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;        });&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;    });&lt;br /&gt;&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 12px"&gt;})();&lt;/pre&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Esto es solo una pequeña prueba, en otra entrega probaré un poco más a fondo a Script# y su rendimiento.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Por ahora solo les digo que la herramienta te permite hacer algo que de otra forma sería muy dificil o poco mantenible: Tener control sobre el código del cliente desde el servidor.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Gracias por leer!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5489196835890013598?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5489196835890013598/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/03/probando-script-de-c-javascript.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5489196835890013598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5489196835890013598'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/03/probando-script-de-c-javascript.html' title='Probando Script# – De C# a Javascript'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-8078233827791872423</id><published>2011-02-16T17:17:00.000-04:30</published><updated>2011-02-16T17:17:51.271-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='WP7'/><title type='text'>[Video] - Multitasking en WP7</title><content type='html'>Un video de MWC11 en donde demuestran el futuro funcionamiento del multitasking en WP7. Según rumores este segundo update vendría para el segundo semestre del 2011. No solo nos traerá Multitasking sino que también mejoras en la experiencia del usuario, más estabilidad en las aplicaciones y mejoras en la búsqueda en marketplace.&lt;br /&gt;&lt;br /&gt;Por cierto, el primer update será según he leído será este 8 de Marzo. La cual incluirá supuestamente una nueva versión de IE, mejoras en rendimiento, y el tan anhelado Copy&amp;amp;Paste. Disfruten del Video:&lt;br /&gt;&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="390" src="http://www.youtube.com/embed/7DHMH9rHCAY" title="YouTube video player" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;em&gt;&lt;span style="font-size: small;"&gt;Gracias por leer!&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-8078233827791872423?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/8078233827791872423/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/02/video-multitasking-en-wp7.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8078233827791872423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8078233827791872423'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/02/video-multitasking-en-wp7.html' title='[Video] - Multitasking en WP7'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/7DHMH9rHCAY/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2340973242127872055</id><published>2011-01-24T12:23:00.000-04:30</published><updated>2011-01-24T12:23:43.924-04:30</updated><title type='text'>Microsoft WebCamps Venezuela</title><content type='html'>Los Webcamps de Microsoft son una serie de eventos que te permitirán aprender a crear Websites utilizando Asp.Net MVC, WebMatrix, OData, entre otros.&lt;br /&gt;&lt;br /&gt;Puedes descargar la agenda del evento acá: &lt;a href="http://download.microsoft.com/download/4/6/3/463C0404-8417-44D3-A995-EA3DA17B9E4D/agenda.pdf"&gt;Descargar Agenda&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lugares:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Maracaibo:&amp;nbsp;&lt;/b&gt; &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Miércoles 26 de Enero 2011&lt;/li&gt;&lt;li&gt;Lugar: Edificio Grano de Oro (antiguo aeropuerto) Auditorio Jesús Enrique Lozada Facultad Experimental de Ciencias – Universidad del Zulia&lt;/li&gt;&lt;li&gt;Hora: 08:00 am - 01:00 pm&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032472403&amp;amp;Culture=es-VE"&gt;&lt;img border="0" height="37" src="http://www.microsoft.com/venezuela/webcamps/images/registrate.gif" width="200" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;Porlamar:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Viernes 28 de Enero 2011&lt;/li&gt;&lt;li&gt;Lugar: Universidad Sigo&lt;/li&gt;&lt;li&gt;Hora: 08:00 am - 01:00 pm&lt;/li&gt;&lt;li&gt;&lt;a href="https://msevents.microsoft.com/CUI/InviteOnly.aspx?EventID=D8-E3-77-F7-74-0B-3B-DC-E9-3E-D1-58-EC-09-A2-67&amp;amp;Culture=es-VE" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="37" src="http://www.microsoft.com/venezuela/webcamps/images/registrate.gif" width="200" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;Caracas:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Martes 08 de Febrero 2011&lt;/li&gt;&lt;li&gt;Lugar: Universidad Central de Venezuela Auditorio de la Facultad de Ciencias. Paseo Los Ilustres Urb. Valle Abajo. Caracas&lt;/li&gt;&lt;li&gt;Hora: 09:00 am - 05:00 pm&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a href="https://msevents.microsoft.com/CUI/InviteOnly.aspx?EventID=D8-E3-77-F7-74-0B-3B-DC-60-07-51-90-10-3D-C4-80&amp;amp;Culture=es-VE" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="37" src="http://www.microsoft.com/venezuela/webcamps/images/registrate.gif" width="200" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;i&gt;&lt;span style="font-size: large;"&gt;Esperamos su asistencia!&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2340973242127872055?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2340973242127872055/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/01/microsoft-webcamps-venezuela.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2340973242127872055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2340973242127872055'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/01/microsoft-webcamps-venezuela.html' title='Microsoft WebCamps Venezuela'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2332965323493221758</id><published>2011-01-01T02:18:00.000-04:30</published><updated>2011-01-01T02:18:11.599-04:30</updated><title type='text'>Feliz año nuevo!!</title><content type='html'>Les deseo a todos los lectores un feliz año nuevo, y que todas sus aplicaciones compilen sin errores!&lt;br /&gt;&lt;br /&gt;Que sus deployments se hagan sin problemas y que sus bases de datos estén bien diseñadas :P&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;span style="color: #38761d;"&gt;&lt;strong&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;, sans-serif;"&gt;FELIZ AÑO 11111011011&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2332965323493221758?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2332965323493221758/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2011/01/feliz-ano-nuevo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2332965323493221758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2332965323493221758'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2011/01/feliz-ano-nuevo.html' title='Feliz año nuevo!!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-4192546607825990600</id><published>2010-12-26T14:10:00.003-04:30</published><updated>2010-12-30T18:06:56.151-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Downloads'/><title type='text'>Nueva Descarga: Super ImageShackClient v1.1</title><content type='html'>&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" height="65" src="http://3.bp.blogspot.com/_h_H4m_HIj1c/TReEMmP3QRI/AAAAAAAAALg/DrjeYF3aao4/s400/imageshacksu1.png" width="75" /&gt;&lt;/div&gt;&lt;/td&gt;       &lt;td&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Super ImageShackClient v1.1&lt;/span&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;Cliente Windows para ImageShack&lt;br /&gt;Características:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Subir directamente a ImageShack con tan solo presionar un botón.&lt;/li&gt;&lt;li&gt;Actualizaciones automáticas.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Diferentes maneras de obtener imágenes: pantalla completa, un pezado de la pantalla, ventana activa, desde un archivo o desde el portapapeles.&lt;/li&gt;&lt;li&gt;Posibilidad de guardar a un archivo la imagen utilizada.&lt;/li&gt;&lt;li&gt;Pequeña edición de imágenes: Resaltador, Lápiz de varios colores y tamaños, cambio de tamaño de imágen.&lt;/li&gt;&lt;li&gt;Multi-Idioma: Actualmente está en inglés, pero estoy trabajando en la versión en español. Las correcciones llegarán por actualización.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Iniciar con windows.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Descarga:&amp;nbsp;&lt;a href="http://files.andreujuan.com/apps/Download.aspx?name=superimageshack"&gt;http://files.andreujuan.com/apps/Download.aspx?name=superimageshack&lt;/a&gt;&lt;br /&gt;Total Descargas: &lt;img border="0" src="http://files.andreujuan.com/apps/TotalDownloads.aspx?app=superimageshack" /&gt;&lt;/div&gt;&lt;/td&gt;    &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-4192546607825990600?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/4192546607825990600/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/12/descargas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/4192546607825990600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/4192546607825990600'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/12/descargas.html' title='Nueva Descarga: Super ImageShackClient v1.1'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h_H4m_HIj1c/TReEMmP3QRI/AAAAAAAAALg/DrjeYF3aao4/s72-c/imageshacksu1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1684197779128301461</id><published>2010-12-24T20:14:00.000-04:30</published><updated>2010-12-24T20:14:01.517-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><title type='text'>Feliz navidad!</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.cdupload.com/files/43862_snmms/geek%20christmas_edited.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://www.cdupload.com/files/43862_snmms/geek%20christmas_edited.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Les deseo una feliz navidad a todos mis lectores, que aunque sean pocos, se que encuentran en mi blog un sitio en donde entender un poco más sobre .Net y C#.&lt;br /&gt;&lt;br /&gt;Recuerden siempre manejar sus excepciones en navidad!! y no dejen ningún bug por ahí!!&lt;br /&gt;&lt;br /&gt;Con cariño,&lt;br /&gt;&lt;br /&gt;Juan Andreu!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1684197779128301461?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1684197779128301461/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/12/feliz-navidad.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1684197779128301461'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1684197779128301461'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/12/feliz-navidad.html' title='Feliz navidad!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-570835549405956841</id><published>2010-12-02T00:30:00.000-04:30</published><updated>2010-12-02T00:30:15.646-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Kinect'/><title type='text'>Genial video de Kinect y Windows 7</title><content type='html'>Solamente les dejo este video para que puedan ver lo que se puede hacer con un poco de inversión sobre Kinect.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="640" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/M-wLOfjVfVc?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/M-wLOfjVfVc?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-570835549405956841?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/570835549405956841/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/12/genial-video-de-kinect-y-windows-7.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/570835549405956841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/570835549405956841'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/12/genial-video-de-kinect-y-windows-7.html' title='Genial video de Kinect y Windows 7'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-9061928781626296382</id><published>2010-11-11T09:21:00.001-04:30</published><updated>2010-11-11T09:21:51.114-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sql Server'/><title type='text'>SQL Server 2011 code-named "Denali"</title><content type='html'>&lt;div class="separator" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;"&gt;&lt;img border="0" height="234" src="http://www.kodyaz.com/images/sql-server-2011/sql-server-2011-management-studio.png" width="320" /&gt;&lt;/div&gt;Microsoft lanza a Sql Server 2011 CTP1 - Community Technology Preview. El proyecto comenzó hace tiempo, y fue nombrado Denali.&lt;br /&gt;&lt;br /&gt;Cuando vean el entorno gráfico van a encontrar algo muy parecido a Visual Studio 2010, lo que da un poco de uniformidad al desarrollo.&lt;br /&gt;&lt;br /&gt;Entre lo nuevo podemos encontrar: Spatial Type Improvements, Circular Arcs: Support for Three New Subtypes, CircularString, Nuevos métodos para tipos espaciales y geográficos, mayor precisión, Mayor performance general, entre otras.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Descargar un Docx con las características:&lt;/b&gt; &lt;a href="http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/Spatial_Denali_CTP1.docx"&gt;http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/Spatial_Denali_CTP1.docx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Más info acá:&lt;/b&gt; &lt;a href="http://www.microsoft.com/sqlserver/en/us/product-info/future-editions.aspx"&gt;http://www.microsoft.com/sqlserver/en/us/product-info/future-editions.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Descarga:&lt;/b&gt; &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6a04f16f-f6be-4f92-9c92-f7e5677d91f9"&gt;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6a04f16f-f6be-4f92-9c92-f7e5677d91f9&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Gracias por leer!&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-9061928781626296382?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/9061928781626296382/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/11/sql-server-2011-code-named-denali.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/9061928781626296382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/9061928781626296382'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/11/sql-server-2011-code-named-denali.html' title='SQL Server 2011 code-named &quot;Denali&quot;'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3088435481071826327</id><published>2010-11-03T08:55:00.003-04:30</published><updated>2010-11-03T08:59:23.608-04:30</updated><title type='text'>Ebook gratis de Charles Petzold - Programming Windows Phone 7</title><content type='html'>&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 240px;" src="http://img233.imageshack.us/img233/907/29964942.png" border="0" alt="" /&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;Charles Petzold ha publicado un libro electrónico o ebook gratuito, en inglés y en formato pdf sobre Windows Phone 7.&lt;br /&gt;&lt;br /&gt;El libro se titula Programming Windows Phone 7, y puede ser accedido &lt;a href="http://download.microsoft.com/download/5/0/A/50A39509-D015-410F-A8F2-A5511E5A988D/Microsoft_Press_ebook_Programming_Windows_Phone_7_PDF.pdf" style="text-decoration: none; color: rgb(152, 70, 4); "&gt;este enlace (13 Mb)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;También podemos acceder a los ejemplos del libro en &lt;a href="http://download.microsoft.com/download/5/0/A/50A39509-D015-410F-A8F2-A5511E5A988D/Microsoft_Press_ebook_Programming_Windows_Phone_7_Sample_Code.zip" style="text-decoration: none; color: rgb(152, 70, 4); "&gt;este otro enlace (5 Mb)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;El libro está dividido en 24 capítulos donde trata toda la temática general de Windows Phone 7 que un programador debe conocer.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;Gracias a Raul Arellano por el enlace!!&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 15px; "&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;Fuente: &lt;/span&gt;&lt;/span&gt;&lt;a href="http://geeks.ms/blogs/jorge/archive/2010/11/03/ebook-gratis-de-charles-petzold-programming-windows-phone-7.aspx"&gt;http://geeks.ms/blogs/jorge/archive/2010/11/03/ebook-gratis-de-charles-petzold-programming-windows-phone-7.aspx&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3088435481071826327?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3088435481071826327/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/11/ebook-gratis-de-charles-petzold.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3088435481071826327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3088435481071826327'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/11/ebook-gratis-de-charles-petzold.html' title='Ebook gratis de Charles Petzold - Programming Windows Phone 7'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-8367499916853910071</id><published>2010-10-21T10:27:00.008-04:30</published><updated>2010-10-22T13:53:56.820-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Innov@IT donde sientes la tecnología - Margarita 2010</title><content type='html'>&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 630px" src="http://www.estamosenlinea.com.ve/wp-content/uploads/2010/06/innovait.jpg" border="0" alt="" /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight:bold;"&gt;&lt;span class="Apple-style-span"&gt;Actualización:&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt; página del evento en facebook: &lt;/span&gt;&lt;a href="http://www.facebook.com/pages/InnovaIT/166761420006673"&gt;http://www.facebook.com/pages/InnovaIT/166761420006673&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.facebook.com/pages/InnovaIT/166761420006673"&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Actualización 2:&lt;/b&gt; acá se pueden registrar: &lt;a href="http://www.microsoft.com/venezuela/innovait/"&gt;http://www.microsoft.com/venezuela/innovait/&lt;/a&gt;&lt;br /&gt;&lt;p style="text-align: center;"&gt;&lt;i&gt;Espero puedan asistir y aprovechan de unos días de vacaciones!!&lt;/i&gt;&lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;i&gt;Gracias por leer...&lt;/i&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-8367499916853910071?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/8367499916853910071/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/10/innovit-donde-sientes-la-tecnologia.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8367499916853910071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8367499916853910071'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/10/innovit-donde-sientes-la-tecnologia.html' title='Innov@IT donde sientes la tecnología - Margarita 2010'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-4863477340603773545</id><published>2010-10-16T16:15:00.006-04:30</published><updated>2010-10-27T17:25:15.722-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>[Curso] Sql Server - Nivel Básico</title><content type='html'>&lt;div&gt;Hola amigos, hoy les traigo este curso que va a dictar Noixno. El contenido es excelente para los que se quieran inciar en Bases de datos o que vengan de otro SMBD, o simplemente reforzar los conocimientos actuales!&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs011.snc4/33896_487189412164_666042164_7467169_883526_n.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 600px;" src="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs011.snc4/33896_487189412164_666042164_7467169_883526_n.jpg" border="0" alt="" /&gt;&lt;/a&gt;El material está incluido, así como también un certificado por Microsoft.&lt;div&gt;&lt;br /&gt;&lt;div&gt;Espero les guste este curso, un saludo y gracias por leer!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-4863477340603773545?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/4863477340603773545/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/10/curso-sql-server-nivel-basico.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/4863477340603773545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/4863477340603773545'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/10/curso-sql-server-nivel-basico.html' title='[Curso] Sql Server - Nivel Básico'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1799614443887639941</id><published>2010-10-07T10:12:00.002-04:30</published><updated>2010-10-07T10:33:16.097-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Workshop Visual Studio 2010 / .Net 4.0</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Tahoma, Verdana, Helvetica, sans-serif; font-size: 13px; color: rgb(35, 40, 51); line-height: 17px; "&gt;Hoy les traigo información sobre un workshop, (un curso especializado) de Visual Studio 2010. Dejo claro que &lt;b&gt;no estoy ganando nada por esto&lt;/b&gt;, simplemente conozco a quien lo va a impartir, y se que es buen material para los que quieran actualizarse.&lt;br /&gt;&lt;br /&gt;Otro punto importante es que estos workshops van a ser impartidos en &lt;b&gt;Valencia, Venezuela.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Requisitos:&lt;/b&gt;&lt;br /&gt;&lt;ul style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;li&gt;Conocimientos al menos de un motor de Bases de Datos.&lt;/li&gt;&lt;li&gt;Conocimientos generales de programación.&lt;/li&gt;&lt;li&gt;Laptop/Portatil, en caso de no tener notificar al personal con anticipación.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;Agenda:&lt;/b&gt;&lt;br /&gt;&lt;ul style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;li&gt;Modelando el proyecto.&lt;/li&gt;&lt;li&gt;Definiendo la importancia del motor de base de datos, revisando la capa 1: Sql Server.&lt;/li&gt;&lt;li&gt;Definiendo entidades de negocios, introducción a EntityFramework.&lt;/li&gt;&lt;li&gt;La regla del negocio: Dónde, Cómo y Cuándo.&lt;/li&gt;&lt;li&gt;Windows Form, extendiendo las capacidades de la interfaz del usuario.&lt;/li&gt;&lt;li&gt;Entendiendo la Programación Orientada a Objetos.&lt;/li&gt;&lt;li&gt;Programando bajo la norma.&lt;/li&gt;&lt;li&gt;Colaborando con otros dentro de la solución.&lt;/li&gt;&lt;li&gt;Introducción a Windows Comunication Fundation y Windows Workflow.&lt;/li&gt;&lt;li&gt;El motor de reportes de Visual Studio 2010.&lt;/li&gt;&lt;li&gt;Aprendiendo a crear pruebas Unitarias.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;El precio del workshop (son 24 horas) es Bs.F. 1.400, e incluye certificado de asistencia Microsoft y training kit en formato digital.&lt;br /&gt;&lt;br /&gt;Si estás interesado, contactarme directamente a mi correo: &lt;b&gt;andreujuanc[arroba]gmail[punto]com&lt;/b&gt; para consultar disponibilidad.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma, Verdana, Helvetica, sans-serif; font-size: 13px; color: rgb(35, 40, 51); line-height: 17px; "&gt;&lt;i&gt;Gracias por leer!!&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1799614443887639941?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1799614443887639941/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/10/workshop-visual-studio-2010-net-40.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1799614443887639941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1799614443887639941'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/10/workshop-visual-studio-2010-net-40.html' title='Workshop Visual Studio 2010 / .Net 4.0'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-7839462214522375012</id><published>2010-09-20T14:39:00.000-04:30</published><updated>2010-09-20T14:40:45.659-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>#WebVe: 2do encuentro de twitteros del área web y tecnología en Caracas</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Arial, Helvetica, sans-serif; color: rgb(51, 51, 51); font-size: 12px; line-height: 18px; "&gt;Este 8 de octubre, en la Terraza de la Súperferia del Centro Sambil Caracas realizará la segunda edición del #Webve.&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Arial, Helvetica, sans-serif; color: rgb(51, 51, 51); font-size: 12px; line-height: 18px; "&gt; Para asistir al evento los interesados sólo tienen que colocar en su timeline de twitter: “Voy al #WebVe” y luego seguir la&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(51, 51, 51); line-height: 18px; "&gt; cuenta @webve&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(51, 51, 51); line-height: 18px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(51, 51, 51); line-height: 18px; "&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.25em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline; line-height: 1.5em; "&gt;&lt;em style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-style: italic; font-size: 12px; font-family: inherit; vertical-align: baseline; "&gt;&lt;b&gt;Ponentes&lt;/b&gt;&lt;/em&gt;&lt;em style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: italic; font-size: 12px; font-family: inherit; vertical-align: baseline; "&gt;:&lt;/em&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.25em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline; line-height: 1.5em; "&gt;* Carmen Vazquez (Microsoft) quien estará hablando de cloud computing (Computación en la Nube) como herramienta de emprendimiento en internet.&lt;br /&gt;* Leman Oliveros (Cisco) quien estará hablando de emprendimiento en la Web.&lt;br /&gt;* Isabel Ravell (@Analiticom) quien estará hablando de qué hacer y qué no hacer en las redes sociales (Twitter, Facebook, Youtube, etc) para posicionar una marca.&lt;br /&gt;* Alfredo Sanchez (Director Ejecutivo NegocioPyme) quien estará hablando de Redes Sociales y Negocios para emprendedores, empresas y ONG´s&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.25em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline; line-height: 1.5em; "&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.25em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline; line-height: 1.5em; "&gt;&lt;em style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-style: italic; font-size: 12px; font-family: inherit; vertical-align: baseline; "&gt;&lt;b&gt;Panelistas&lt;/b&gt;&lt;/em&gt;&lt;em style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: italic; font-size: 12px; font-family: inherit; vertical-align: baseline; "&gt;:&lt;/em&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.25em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline; line-height: 1.5em; "&gt;* Edgar Rincón (@erinconm) Periodista de Tecnología, programa de tecnología llamado ciberespacio.&lt;br /&gt;* Froilan Fernandez (@froilan) Escritor de tecnologia de “El Nacional”, columna entrebytes.&lt;br /&gt;* Angel Mendez (@angelmendezm) Jefe de Mercadeo Lectores en El Universal.&lt;br /&gt;* Fran Monroy (@fmonroy) Periodista de Tecnología, Editor revista código Abierto.&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-7839462214522375012?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/7839462214522375012/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/09/webve-2do-encuentro-de-twitteros-del.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7839462214522375012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7839462214522375012'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/09/webve-2do-encuentro-de-twitteros-del.html' title='#WebVe: 2do encuentro de twitteros del área web y tecnología en Caracas'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3695092096107576742</id><published>2010-08-23T13:04:00.001-04:30</published><updated>2010-08-23T13:07:39.699-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sql Server'/><title type='text'>Introducción al tipo de datos geography en Sql Server</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana;font-size:small;"&gt;Geography es de tipo espacial, y está implementado como un tipo de datos CLR en Sql Server, es decir es una clase administrada . Este tipo representa daata en un sistema de coordenadas de la tierra, la cual almacena información elipsoidal como latitud y longitud.&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana;font-size:12px;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;Ahora veremos un pequeño ejemplo de como hacer una consulta pero antes necesitamos crear nuestra tabla:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 96%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CREATE&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;TABLE&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;dbo&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Customer&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ID&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;decimal&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;18&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; IDENTITY&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NOT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Name&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;varchar&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;250&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NOT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Location&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;geography&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NOT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; CONSTRAINT &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PK_Customer&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PRIMARY&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;KEY&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; CLUSTERED &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:small;"&gt;(&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ID&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ASC&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;WITH&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PAD_INDEX  &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; OFF&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; STATISTICS_NORECOMPUTE  &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; OFF&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; IGNORE_DUP_KEY &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; OFF&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ALLOW_ROW_LOCKS  &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ALLOW_PAGE_LOCKS  &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PRIMARY&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ON&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PRIMARY&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Simplemente creamos una tabla de clientes, con un ID, Nombre y su posición espacial utilizando el tipo geography. Ejecutamos el Script para crear la tabla y listo.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Ya con nuestra tabla creada ingresaremos la data. Hay que tener en cuenta que la posición es parecido a X,Y, (Longitud y latitud). Otro punto es que la data para ser convertida hay que utilizar ciertos métodos del tipo geography, la lista de métodos pueden verla en &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb933988.aspx" target="_blank" style="text-decoration: underline; color: rgb(0, 102, 153); background-color: transparent; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;http://msdn.microsoft.com/en-us/library/bb933988.aspx&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; los cuales soportan las especificaciones de Open Geospatial Consortium (OGC). &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;En este caso usaremos STGeomFromText, el cual según msdn se define como: "&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;STGeomFromText (geography Data Type):&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Returns a geography instance from an Open Geospatial Consortium (OGC) Well-Known Text (WKT) representation augmented with any Z (elevation) and M (measure) values carried by the instance."&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La sintaxis es la siguiente:&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código:&lt;/span&gt;&lt;/div&gt;&lt;div class="code"  style="text-align: justify; color: rgb(0, 0, 0); background-color: rgb(234, 236, 237); font-family:'Courier New', Verdana, Arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;STGeomFromText ( 'geography_tagged_text' , SRID )&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;El primer parámetro es el texto que queremos parsear como coordenadas, puede ser algo como 'POINT(-81.13 -6.17)'&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;El segundo parámetro es el identificador de referencia espacial. En nuestro caso usaremos el del planeta tierra que es el &lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;World Geodetic System 1984 (WGS 84)&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; en donde el valor es: 4326 segun la tabla de sqlserver &lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;sys.spatial_reference_systems&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Con todo esto explicado el insert quedaría algo así: &lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="text-align: justify;color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 96%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;INSERT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;INTO&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Customer &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;VALUES&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;'Juan'&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; geography::STGeomFromText&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;'POINT(-81.13 -6.17)'&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;4326&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Hacemos un Query:&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="text-align: justify;color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 96%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;SELECT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FROM&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Customer&lt;/span&gt;&lt;/pre&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código:&lt;/span&gt;&lt;/div&gt;&lt;div class="code"  style="text-align: justify; color: rgb(0, 0, 0); background-color: rgb(234, 236, 237); font-family:'Courier New', Verdana, Arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Juan&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0xE6100000010CAE47E17A14AE18C0B81E85EB514854C0&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pero es muy dificil de comprender, por lo que hacemos un cast a Point:&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="text-align: justify;color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 96%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;SELECT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ID&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Name&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Location&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CONVERT&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Varchar&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;max&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Location&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;AS&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Point &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FROM&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Customer&lt;/span&gt;&lt;/pre&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código:&lt;/span&gt;&lt;/div&gt;&lt;div class="code"  style="text-align: justify; color: rgb(0, 0, 0); background-color: rgb(234, 236, 237); font-family:'Courier New', Verdana, Arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0xE6100000010CAE47E17A14AE18C0B81E85EB514854C0&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;POINT (-81.13 -6.17)&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Intentemos algo más interesante: Hay un método llamado STDistance, el cual te regresa la distancia entre dos puntos, entonces hacemos la siguiente consulta:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 96%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;INSERT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;INTO&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Customer &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;VALUES&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;'Juan'&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; geography::STGeomFromText&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;'POINT(-60.13 -6.17)'&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;4326&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;GO&lt;/div&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-weight: normal; "&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;SELECT&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ID&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Name&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CONVERT&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Varchar&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;max&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Location&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;AS&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Point&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Location&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;STDistance&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;geography::STGeomFromText&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;'POINT(-50.13 -6.17)'&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;4326&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FROM&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Customer&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;GO&lt;/div&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;¿Qué hace?  Pues, primero añadimos otro registro para darle un poco más valor a esto. Luego ejecutamos el Select, el cual calcula por cada registro la distancia sobre un punto en común: geography::STGeomFromText('POINT(-50.13 -6.17)',4326)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Cuando vemos el resultado es más fácil de entender:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="codeheader" style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código:&lt;/span&gt;&lt;/div&gt;&lt;div class="code"  style=" color: rgb(0, 0, 0); background-color: rgb(234, 236, 237); font-family:'Courier New', Verdana, Arial, helvetica, serif;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ID&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Name&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Location&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Distance&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Juan&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;POINT (-81.13 -6.17)&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3430549.19165979&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Pedro&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;POINT (-60.13 -6.17)&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1106773.11874875&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;De esta forma podemos hacer que la consulta nos traiga los 10 Clientes más cercanos a X punto, qué es mucho más preciso que hacerlo por ciudad o algo parecido.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Un saludo, espero seguir con el tema en cuanto pueda.&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3695092096107576742?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3695092096107576742/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/introduccion-al-tipo-de-datos-geography.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3695092096107576742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3695092096107576742'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/introduccion-al-tipo-de-datos-geography.html' title='Introducción al tipo de datos geography en Sql Server'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3920597001884367522</id><published>2010-08-23T09:49:00.007-04:30</published><updated>2010-08-23T10:09:35.940-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='C++/CLI'/><category scheme='http://www.blogger.com/atom/ns#' term='Avanzado'/><title type='text'>Marshal - Interactuando entre managed y unmanaged memory.</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Antes de comenzar con el tema tenemos que tener en cuenta que toda aplicación en .Net se ejecuta bajo una porción de memoria administrada por el CLR y no interactúa directamente con la memoria nativa.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Pero ahora, &lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;¿Qué es Marshal?&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;. Marshal es una clase que está en el namespace System.Runtime.InteropServices, que casi nadie habla de él y que no muchos han visto, y lo que hace es mediar entre ambos entornos. Imaginen un bar de lujo (Managed Memory), la calle (Unmanaged Memory) y el portero (Marshal), no es más que eso, si quieres entrar o salir del bar, vas a tener que pedirle permiso a Marshal. En pocas palabras marshal nos permite copiar data de un lado a otro.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Les voy a mostrar un cuadro que vi hace tiempo en msdn, y que ilustra muy bien las categorías de los miembros de la clase Marshal:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;img style="text-align: justify;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; cursor: pointer; width: 620px;" src="http://img827.imageshack.us/img827/241/marshalmembers.png" border="0" alt="" /&gt;&lt;span class="Apple-style-span"  style="  -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;En este artículo utilizaremos principalmente los miembros de la categoría &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Data transformation&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;, qué son los que nos permiten pasar data del entorno administrado al nativo y viceversa. Como vemos en la tabla, los métodos son bastante descriptivos, por ejemplo StringToHGlobalAnsi lo que hace es copiar el contenido de un string administrado a la memoria nativa, y te retorna la dirección en donde copió la data.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana, arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;En esta página de msdn &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal_members(v=VS.71).aspx"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Marshal Members&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; podrán ver bien qué hace cada miembro y si requiere de algún paso adicional, como es el caso de StringToHGlobalAnsi, el cual necesita llamar a la función &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal.freehglobal(v=VS.71).aspx"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FreeHGlobal&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; (también de Marshal)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;b&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;span style="line-height: 1.3em; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Veamos un ejemplo práctico del uso de Marshal:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Un amigo, [Zero], tiene una clase en C, es una especie de utilitario. Para el ejemplo usaremos la siguiente función del código de [Zero]:&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="  -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="  -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana, arial, helvetica, serif;"&gt;&lt;pre class="geshi"   style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);   border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 95%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;font-size:12px;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(102, 102, 102); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//La funcion lo que hace es terminar un proceso en ejecucion.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="color: rgb(153, 51, 51); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span style="color: rgb(153, 51, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; cTerminateProcess&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;char&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; lpProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; HANDLE hProcess&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; HANDLE hSnapshot&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; PROCESSENTRY32 &lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; hSnapshot&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CreateToolhelp32Snapshot&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;TH32CS_SNAPPROCESS,&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;hSnapshot&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-1&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PROCESSENTRY32&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;GlobalAlloc&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;GPTR,&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;sizeof&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PROCESSENTRY32&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&gt;dwSize&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(153, 51, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;sizeof&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PROCESSENTRY32&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(102, 102, 102); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//Obtenemos el PID del proceso&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Process32First&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;hSnapshot,pInfo&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;do&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;lstrcmpA&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&gt;szExeFile,lpProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;OpenProcess&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PROCESS_TERMINATE,&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FALSE&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&gt;th32ProcessID&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;    hProcess&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;OpenProcess&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PROCESS_TERMINATE,&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FALSE&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,pInfo&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&gt;th32ProcessID&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Process32Next&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;hSnapshot,pInfo&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; GlobalFree&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;pInfo&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;hProcess&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-1&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 51); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;TerminateProcess&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;hProcess,&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-1&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Sleep&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;100&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(177, 177, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(204, 102, 204); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;span style="color: rgb(0, 153, 0); "&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Supongamos que yo quiero usarlo desde .Net, ¿Cómo sería eso posible? No es muy dificil, ni requiere mucho tiempo. La idea es crear una librería en .Net la cual podamos referencia sin ningún problema, esto se llama wrapper, y lo haremos desde C++ CLI, el cual nos permite exactamente lo que queremos, interactuar entre entornos Administrados y Nativos mucho más fácil que desde C#, aunque sigue siendo posible, pero tendríamos que usar el keyword unsafe. En C++ tenemos mucho más fácil el acceso a la memoria nativa del sistema, y el mismo acceso al framework.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Ahora sigamos los siguientes pasos para crear nuestro Wrapper:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="line-height: 1.3em; "&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.- Creamos una &lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Solución en Blanco&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; en Visual Studio&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Le ponen un nombre y click en aceptar. Eso es todo.!&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;b&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;span style="line-height: 1.3em; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.- Ahora agregamos Un Proyecto C++ (Static Library)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/b&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Este proyecto es donde va el código en C, es decir, las funciones a las cuales les queremos hacer el wrapper (en español es algo como envoltorio, ya veremos por qué). Para crear el proyecto le dan botón derecho en la solución, en el explorador de soluciones. Luego Agregar Nuevo Proyecto. En la ventana seleccionen Visual C++ y en el listado escojan Win32 Project, le dan un nombre y Click en Aceptar.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Aquí es donde va la función cTerminateProcess del código de [Zero].&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="line-height: 1.3em; "&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3.- Creamos un Proyecto C++ CLI (Dynamic Library)&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Este va a ser nuestro Wrapper, por lo que crearemos un proyecto en C++ CLI de tipo Dynamic Library, es decir una DLL. De la misma forma que con el proyecto anterior, agregamos un nuevo proyecto seleccionamos igual Visual C++ pero esta vez el tipo de Proyecto será Class Library. Nombramos el proyecto y aceptamos.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Ahora tenemos que hacer dos cosas, la primera es agregar el directorio en donde está el .h del proyecto de C, esto se hace yendo a las propiedades del proyecto &gt; Propiedades de Configuración &gt; C/C++ &gt; General, y dónde dice Additional Include Directories agregar el directorio correspondiente. El segundo paso es agregar a la lista de dependencias la dirección en donde está el .lib que es el resultado del static library en C. Pueden hacerlo yendo a Propiedades de Configuración &gt; Linker &gt; Input, agregandolo en donde dice Dependencias Adicionales. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Ya tenemos todo listo para comenzar a hacer el wrapper. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Creamos una clase y le ponemos el nombre que quieras ponerle cuando la vayan a utilizar, por lo que debe ser un nombre que haga referencia a la función del código. En nuestro caso le pondremos DemoClass. Se crearán dos archivos uno .h y otro .cpp, Abrimos el .h para definir la clase y el método que queremos.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;El código del .h quedaría así:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;pre class="geshi"  style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 95%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span style="color: rgb(102, 102, 102); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;// DemoClass.h&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 153, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;#pragma once&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;namespace&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; System;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;namespace&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Demo&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   public&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ref &lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;class&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; DemoClass&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   {&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      public&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;      &lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; TerminateProcess&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;String&lt;/span&gt;&lt;span style="color: rgb(0, 0, 64); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;^&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   }&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;Si recordamos la función en C se llama cTerminateProcess, entonces en nuestro wrapper se llamará simplemente TerminateProcess, los parámetros es algo que hay que tener en cuenta, la funcion original pide char*, en .Net la idea es NO usar punteros por lo que usaremos String, y vale la pena recalcar el uso del simbolo ^ que es simplemente para identificar las referencias a código administrado y código nativo.&lt;br /&gt;&lt;br /&gt;Ya tenemos el .h listo, vamos a codificar el cpp:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; font-family:Verdana;"&gt;&lt;div class="codeheader"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 95%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;// This is the main DLL file.&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;#include "stdafx.h"&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;#include &lt;vcclr.h&gt;&lt;/vcclr.h&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;#include "DemoClass.h"&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;namespace&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;System&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;namespace&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;System&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Runtime&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;InteropServices&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;namespace&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Demo&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; DemoClass&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;TerminateProcess&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;String&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;^&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; ProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;     {&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//Validamos :)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;         if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;!&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;throw&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; gcnew ArgumentNullException&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//Utilizamos StringToHGlobalAnsi el cual pide String como parametro&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//como retorna un puntero, y sabemos que es un string, le hacemos un &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//cast a char*&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="color: rgb(0, 0, 0);  font-size:16px;"&gt;       &lt;/span&gt;char&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; lpProcessName &lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;char&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Marshal&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;StringToHGlobalAnsi&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//ejecutamos cTerminateProcess y le pasamos lpProcessName &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;         int&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; result &lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; AmC&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;cTerminateProcess&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;lpProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;       &lt;/span&gt;&lt;span style="color: rgb(0, 128, 128); font-style: italic; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;//liberamos la memoria usada por lpProcessName , y retornamos&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;       Marshal&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;FreeHGlobal&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;System&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;::&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;IntPtr&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;lpProcessName&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(6, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;         return&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; result&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;     }&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family:Verdana, arial, helvetica, serif;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Como pueden ver no es nada complicado, aunque hay que hacerlo muy bien para no dejar punteros sin liberar ni funciones sin validar.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height: 1.3em; "&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3.- Por último agregamos un Proyecto C# en Windows&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;Usaremos el proyecto para testear la libería. Al Form1 le agregamos un botón y un textbox.&lt;br /&gt;&lt;br /&gt;Doble Click al botón para subscribirnos al evento Click, y colocamos esto:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="codeheader"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Código&lt;/span&gt;&lt;/div&gt;&lt;pre class="geshi"  style="color: rgb(0, 0, 0); background-color: rgb(234, 236, 237);  border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0); border-left-color: rgb(0, 0, 0); margin-top: 1px; margin-right: auto; margin-bottom: 1px; margin-left: auto; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; width: 95%; overflow-x: auto; overflow-y: auto; white-space: pre; font-family:'courier new', verdana, arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;DemoClass m_amNet &lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;a href="http://www.google.com/search?q=new+msdn.microsoft.com" style="text-decoration: underline; color: rgb(0, 102, 153); background-color: transparent; "&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;new&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; DemoClass&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;m_amNet.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;TerminateProcess&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;m_terminateProcessTextBox.&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Text&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 0); "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;Simplemente creamos una instancia de la clase DemoClass y llamamos al método TerminateProcess que a su vez llama al cTerminateProcess en la liberia en C.&lt;br /&gt;&lt;br /&gt;Presionamos F5 para compilar y ejecutar nuestra solución, ejecutamos la calculadora, colocamos ese nombre calc.exe (el nombre del proceso de la calculadora) en el textbox, por último hacemos click en el botón y si todo sale bien debería cerrarse el proceso.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Espero les sirva de ayuda!&lt;br /&gt;&lt;br /&gt;Un saludo!&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3920597001884367522?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3920597001884367522/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/marshal-interactuando-entre-managed-y.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3920597001884367522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3920597001884367522'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/marshal-interactuando-entre-managed-y.html' title='Marshal - Interactuando entre managed y unmanaged memory.'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1315971592016319988</id><published>2010-08-22T23:52:00.002-04:30</published><updated>2010-08-22T23:56:56.880-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><title type='text'>El Blog De Juan ahora en Twitter!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://twitter.com/blogdejuan"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:left;cursor:pointer; cursor:hand;width: 204px; height: 82px;" src="http://img820.imageshack.us/img820/7663/twitter3b.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Sigue al blog en Twitter (&lt;a href="http://twitter.com/blogdejuan"&gt;@blogdejuan&lt;/a&gt;), y entérate de Tips, Enlaces, Noticias y muchas cosas más!!&lt;br /&gt;&lt;br /&gt;Además es una forma más de poder escribirme y mandar cualquier cosa interesante que quieras compartir con nuestros lectores!&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Gracias por leer y te esperamos en twitter!&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;b&gt;&lt;a href="http://twitter.com/blogdejuan"&gt;@blogdejuan&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1315971592016319988?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1315971592016319988/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/el-blog-de-juan-ahora-en-twitter.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1315971592016319988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1315971592016319988'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/el-blog-de-juan-ahora-en-twitter.html' title='El Blog De Juan ahora en Twitter!!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-968713606945066051</id><published>2010-08-17T10:57:00.002-04:30</published><updated>2010-08-17T11:01:40.892-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>I JORNADA DE TECNOLOGÍA E INFORMÁTICA. CRUZANDO LÍMITES TECNOLÓGICOS.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs304.snc4/40544_111299055592662_100001377034244_77408_44988_n.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 450px; height: 720px;" src="http://sphotos.ak.fbcdn.net/hphotos-ak-snc4/hs304.snc4/40544_111299055592662_100001377034244_77408_44988_n.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style=" border-collapse: collapse; color: rgb(51, 51, 51); line-height: 16px; font-family:'lucida grande', tahoma, verdana, arial, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;Un evento de tecnología en donde participarán ponentes especialistas en las áreas correspondientes! Aprende y actualízate!&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style=" border-collapse: collapse; color: rgb(51, 51, 51); line-height: 16px; font-family:'lucida grande', tahoma, verdana, arial, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style=" border-collapse: collapse; color: rgb(51, 51, 51); line-height: 16px; font-family:'lucida grande', tahoma, verdana, arial, sans-serif;"&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; line-height: normal;  "&gt;&lt;table class="dataTable mvm profileInfoTable" style="margin-top: 10px; margin-bottom: 10px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-collapse: collapse; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; width: 521px; "&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th class="label" style="padding-top: 3px; padding-right: 10px; padding-bottom: 1px; padding-left: 0px; text-align: left; vertical-align: top; color: rgb(153, 153, 153); font-weight: bold; width: 105px; "&gt;Hora&lt;/th&gt;&lt;td class="data" style="text-align: left; padding-top: 3px; padding-right: 0px; padding-bottom: 1px; padding-left: 0px; vertical-align: top; line-height: 16px; "&gt;&lt;div&gt;Octubrer 2 · 8:00am - 5:30pm&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="spacer"&gt;&lt;td colspan="2" style="text-align: left; padding-top: 5px; padding-right: 0px; padding-bottom: 5px; padding-left: 0px; "&gt;&lt;hr style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(233, 233, 233); border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; color: rgb(233, 233, 233); height: 1px; border-bottom-style: solid; border-bottom-color: initial; border-top-style: solid; border-right-style: solid; border-left-style: solid; background-position: initial initial; background-repeat: initial initial; "&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th class="label" style="padding-top: 3px; padding-right: 10px; padding-bottom: 1px; padding-left: 0px; text-align: left; vertical-align: top; color: rgb(153, 153, 153); font-weight: bold; width: 105px; "&gt;Lugar&lt;/th&gt;&lt;td class="data" style="text-align: left; padding-top: 3px; padding-right: 0px; padding-bottom: 1px; padding-left: 0px; vertical-align: top; line-height: 16px; "&gt;Auditorio UJAP. San Diego, Edo. Carabobo, Venezuela&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;Enlace al evento en Facebook: &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;a href="http://www.facebook.com/event.php?eid=148824025144375#!/event.php?eid=148824025144375"&gt;http://www.facebook.com/event.php?eid=148824025144375#!/event.php?eid=148824025144375&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;Espero puedan asistir!&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-968713606945066051?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/968713606945066051/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/i-jornada-de-tecnologia-e-informatica.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/968713606945066051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/968713606945066051'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/i-jornada-de-tecnologia-e-informatica.html' title='I JORNADA DE TECNOLOGÍA E INFORMÁTICA. CRUZANDO LÍMITES TECNOLÓGICOS.'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-7965821887388782355</id><published>2010-08-16T13:54:00.004-04:30</published><updated>2010-08-16T16:20:19.269-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Servicios'/><title type='text'>Servicios</title><content type='html'>&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 210px;" src="http://www.swift-consulting.com/php/images/img2_services.jpg" border="0" alt="" /&gt;&lt;div style="text-align: justify;"&gt;Aumentar la productividad gracias a la automatización de procedimientos mediante tecnologías de punta y bajando costos de los mismos es el objetivo de toda empresa. Puede contar con los siguientes servicios para conseguirlo:&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Desarrollo:&lt;br /&gt;      &lt;ul&gt;&lt;br /&gt;        &lt;li&gt;Aplicaciones Web, Diseño gráfico digital, Web Services&lt;/li&gt;&lt;br /&gt;        &lt;li&gt;Aplicaciones Windows y Plataformas Móviles&lt;/li&gt;&lt;br /&gt;        &lt;li&gt;Diseño análisis de base de datos&lt;/li&gt;&lt;br /&gt;        &lt;li&gt;Port de aplicaciones .Net a Mono Compilant&lt;/li&gt;&lt;br /&gt;      &lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Consultoría y Asesorías en casi cualquier tecnología disponible&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Reingeniera de procesos&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Contacto con expertos de seguridad informática&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;Email de Contacto: &lt;b&gt;andreujuanc[at]gmail[dot].com&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-7965821887388782355?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/7965821887388782355/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/servicios.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7965821887388782355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7965821887388782355'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/servicios.html' title='Servicios'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-6124070326365409134</id><published>2010-08-16T13:47:00.004-04:30</published><updated>2010-12-26T14:22:14.725-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Contacto'/><title type='text'>Contacto</title><content type='html'>&lt;img alt="" border="0" src="http://www.chem.utoronto.ca/staff/DSTEPHAN/email-icon.jpg" style="cursor: hand; cursor: pointer; float: left; margin: 0 10px 10px 0; width: 180px;" /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Para contactarme pueden escribir en el Chat, o también pueden escribirme un comentario en cualquier post del blog. O si lo prefieren, pueden escribir un email a: &lt;b&gt;contact @ andreujuan . com &lt;/b&gt;(sin los espacios).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Saludos!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-6124070326365409134?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/6124070326365409134/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/contacto.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6124070326365409134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6124070326365409134'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/contacto.html' title='Contacto'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-8467834465176717025</id><published>2010-08-11T10:13:00.002-04:30</published><updated>2010-08-11T10:18:04.939-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>II Foro Nacional de Tecnologías de la Información y la Comunicación</title><content type='html'>&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 293px;" src="http://profile.ak.fbcdn.net/hprofile-ak-snc4/hs166.ash2/41591_115537181824374_5116_n.jpg" border="0" alt="" /&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;4 debates entre especialistas y expertos, todo el día.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Más una conferencia especial de obsequio.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Aforo limitado. Confirme su asistencia con tiempo.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;El valor de las entradas será publicado a partir del mes de agosto.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;(Certificado incluido)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Representantes de las mayores industrias de Information Technologies.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Un evento organizado por Lourtec (www.lourtec.com) y Softrain (www.softrain.com.ve)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Con el auspicio de Fundacid UC y la Biblioteca Central de la Universidad de Carabobo.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Evento en Facebook: &lt;/span&gt;&lt;a href="http://www.facebook.com/event.php?eid=115537181824374"&gt;http://www.facebook.com/event.php?eid=115537181824374&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Lugar:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"   style="  border-collapse: collapse; color: rgb(51, 51, 51); line-height: 16px; font-family:'lucida grande', tahoma, verdana, arial, sans-serif;font-size:12px;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Centro Cultural Eladio Alemán Sucre&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;El Carabobeño. C.C Omnicentro. Av Universidad. Municipio Naguanagua&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Valencia, Venezuela&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Día y Hora:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;November 20 · 7:30am - 7:00pm&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-8467834465176717025?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/8467834465176717025/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/08/ii-foro-nacional-de-tecnologias-de-la.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8467834465176717025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/8467834465176717025'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/08/ii-foro-nacional-de-tecnologias-de-la.html' title='II Foro Nacional de Tecnologías de la Información y la Comunicación'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5306869951512951269</id><published>2010-07-23T09:31:00.007-04:30</published><updated>2010-07-23T09:38:26.481-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sql Server'/><title type='text'>[Tutorial] CLR Stored Procedures (Sql Server)</title><content type='html'>&lt;div class="post" style="overflow: auto; width: 100%;"&gt;&lt;b&gt;&lt;span style=" line-height: 1.3em;font-size:10pt;"&gt;CLR Stored Procedures&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;El CLR está integrado a SqlServer, y gracias a eso podemos crear objetos de base de datos usando cualquier lenguaje de .Net como C#, VB.Net, F# entre otros. Entre las mejores prácticas de uso en para acciones que no conlleven acceso a datos, como string parsing, comunicación TCP/IP, Webservices, leer o escribir archivos, etc, es recomendable utilizar objetos CLR.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=" line-height: 1.3em;font-size:10pt;"&gt;&lt;b&gt;Crear el Proyecto&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ahora veremos como crear un proyecto sql server desde visual studio:&lt;br /&gt;&lt;br /&gt;1.- Hacemos click en New Project o Nuevo Proyecto, y selecionamos &lt;span style="font-weight:bold;"&gt;DataBase &amp;gt; Sql Server &amp;gt; Visual C# SQL CLR Database Proyect&lt;/span&gt;. Le damos un nombre al proyecto y aceptamos.&lt;br /&gt;2.- Se nos abre una ventana para configurar la conexión a la base de datos, si no aparece o la cerraron, pueden sacarla de nuevo en las propiedades del proyecto y luego en la pestaña Database.&lt;br /&gt;3.- Seguimos los pasos del asistente y llenamos los datos de conexión en la ventana que nos apare y hacemos click en OK, con ésto enlazamos el proyecto con la base de datos.&lt;br /&gt;4.- Por último, de hacemos click derecho en el &lt;span style="font-weight:bold;"&gt;Proyecto &amp;gt; Añadir &amp;gt; Procedimiento Almacenado (Stored Procedure), Le damos un nombre y Aceptar&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://img714.imageshack.us/i/projectx.jpg/" target="_blank"&gt;&lt;img src="http://r.i.elhacker.net/cache?url=http://img714.imageshack.us/img714/1265/projectx.jpg" width="600px" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Con eso tenemos la clase lista para desarrollar los Stored Procedures que queramos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=" line-height: 1.3em;font-size:10pt;"&gt;&lt;b&gt;DEMO:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Le damos doble click al archivo de clase que creamos y vemos que está de esta manera:&lt;br /&gt;&lt;br /&gt;&lt;div class="codeheader"&gt;Código&lt;/div&gt;&lt;pre class="geshi"&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data.SqlClient&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data.SqlTypes&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;Microsoft.SqlServer.Server&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;span style="color:#0600FF;"&gt;public&lt;/span&gt; partial &lt;span style="color:#FF0000;"&gt;class&lt;/span&gt; StoredProcedures&lt;br /&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;[&lt;/span&gt;Microsoft.&lt;span style="color:#0000FF;"&gt;SqlServer&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;Server&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;SqlProcedure&lt;/span&gt;&lt;span style="color:#000000;"&gt;]&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#0600FF;"&gt;public&lt;/span&gt; &lt;span style="color:#0600FF;"&gt;static&lt;/span&gt; &lt;span style="color:#0600FF;"&gt;void&lt;/span&gt; ProcedureDemo&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// Put your code here&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;En esa clase van a ir todos los Stored procedures que querramos crear, puede ir uno por clase, o una clase con varios métodos, en donde cada método es un SP.&lt;br /&gt;&lt;br /&gt;Supongamos que necesito hacer un SP que me liste los archivos de determinado directorio del servidor y los pueda filtrar. La manera correcta y más fácil de hacer esto es con un CLR SP, ya que podemos usar las clases que nos da .Net.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;El Stored Procedure quedaría de esta manera:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="codeheader"&gt;Código&lt;/div&gt;&lt;pre class="geshi"&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data.SqlClient&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.Data.SqlTypes&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;Microsoft.SqlServer.Server&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0600FF;"&gt;using&lt;/span&gt; &lt;span style="color:#008080;"&gt;System.IO&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;span style="color:#0600FF;"&gt;public&lt;/span&gt; partial &lt;span style="color:#FF0000;"&gt;class&lt;/span&gt; StoredProcedures&lt;br /&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;br /&gt;   &lt;span style=" font-style: italic;color:#008080;"&gt;//este es el atributo que marca el método como SP, los parámetros del método &lt;/span&gt;&lt;br /&gt;   &lt;span style=" font-style: italic;color:#008080;"&gt;//serán los parámetros del SP, Noten que el valor de retorno es VOID.&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;[&lt;/span&gt;Microsoft.&lt;span style="color:#0000FF;"&gt;SqlServer&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;Server&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;SqlProcedure&lt;/span&gt;&lt;span style="color:#000000;"&gt;]&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#0600FF;"&gt;public&lt;/span&gt; &lt;span style="color:#0600FF;"&gt;static&lt;/span&gt; &lt;span style="color:#0600FF;"&gt;void&lt;/span&gt; ProcedureDemo&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;string&lt;/span&gt; path, &lt;span style="color:#FF0000;"&gt;string&lt;/span&gt; filter&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// Crea el record y especifica la metadata para las columnas&lt;/span&gt;&lt;br /&gt;       SqlDataRecord record &lt;span style="color:#008000;"&gt;=&lt;/span&gt; &lt;a href="http://www.google.com/search?q=new+msdn.microsoft.com"&gt;&lt;span style="color:#008000;"&gt;new&lt;/span&gt;&lt;/a&gt; SqlDataRecord&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;br /&gt;           &lt;a href="http://www.google.com/search?q=new+msdn.microsoft.com"&gt;&lt;span style="color:#008000;"&gt;new&lt;/span&gt;&lt;/a&gt; SqlMetaData&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#666666;"&gt;"FileName"&lt;/span&gt;, SqlDbType.&lt;span style="color:#0000FF;"&gt;NVarChar&lt;/span&gt;, &lt;span style="color:#FF0000;"&gt;500&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;,&lt;br /&gt;           &lt;a href="http://www.google.com/search?q=new+msdn.microsoft.com"&gt;&lt;span style="color:#008000;"&gt;new&lt;/span&gt;&lt;/a&gt; SqlMetaData&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#666666;"&gt;"Size"&lt;/span&gt;, SqlDbType.&lt;span style="color:#FF0000;"&gt;Int&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;//SqlContext es nuestra vía de comunicación con Sql Server&lt;/span&gt;&lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;//Si quieren validar si el ensamblado está corriendo en Sql Server&lt;/span&gt;&lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// Y existe una conexión disponible pueden validarlo con la propiedad &lt;/span&gt;&lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// IsAvailable de SqlContext que devuelve true o false dependiendo del caso.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// Marca el inicio de la incorporación de registros&lt;/span&gt;&lt;br /&gt;       SqlContext.&lt;span style="color:#0000FF;"&gt;Pipe&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;SendResultsStart&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;record&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;       DirectoryInfo dInfo &lt;span style="color:#008000;"&gt;=&lt;/span&gt; &lt;a href="http://www.google.com/search?q=new+msdn.microsoft.com"&gt;&lt;span style="color:#008000;"&gt;new&lt;/span&gt;&lt;/a&gt; DirectoryInfo&lt;span style="color:#000000;"&gt;(&lt;/span&gt;path&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;       &lt;span style="color:#0600FF;"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;FileInfo file &lt;span style="color:#0600FF;"&gt;in&lt;/span&gt; dInfo.&lt;span style="color:#0000FF;"&gt;GetFiles&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;filter&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;br /&gt;       &lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;br /&gt;           &lt;span style=" font-style: italic;color:#008080;"&gt;//Le damos valor a las columnas&lt;/span&gt;&lt;br /&gt;           record.&lt;span style="color:#0000FF;"&gt;SetString&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#FF0000;"&gt;0&lt;/span&gt;, file.&lt;span style="color:#0000FF;"&gt;FullName&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;           &lt;span style=" font-style: italic;color:#008080;"&gt;// y enviamos el registro&lt;/span&gt;&lt;br /&gt;           SqlContext.&lt;span style="color:#0000FF;"&gt;Pipe&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;SendResultsRow&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;record&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;       &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;       &lt;span style=" font-style: italic;color:#008080;"&gt;// Marca el fin y envia los resultados&lt;/span&gt;&lt;br /&gt;       SqlContext.&lt;span style="color:#0000FF;"&gt;Pipe&lt;/span&gt;.&lt;span style="color:#0000FF;"&gt;SendResultsEnd&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;br /&gt;   &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#008000;"&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Cuando ya terminemos el SP, Simplemente click derecho sobre el proyecto y click en Deploy y se va directo a Sql Server y se crea el SP donde se podrá usar sin problema alguno.  &lt;br /&gt;&lt;br /&gt;Otro paso importante es habilitar el CLR dentro de Sql Server, lo podemos hacer de la siguiente manera:&lt;br /&gt;&lt;br /&gt;&lt;div class="codeheader"&gt;Código&lt;/div&gt;&lt;pre class="geshi"&gt;sp_configure &lt;span style="color:#ff0000;"&gt;'clr enabled'&lt;/span&gt;&lt;span style="color:#66cc66;"&gt;,&lt;/span&gt; &lt;span style="color:#cc66cc;"&gt;1&lt;/span&gt;;&lt;br /&gt;RECONFIGURE;&lt;br /&gt;GO&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;Aunque hay casos en donde el assembly requiere privilegios elevados, cuando éste sea el caso necesitan marcar el assembly como UNSAFE, es decir sin restricciones. Click derecho en el proyecto &amp;gt; Propiedades &amp;gt; En la pestaña Database seleccionamos el Permission Level como Unsafe.&lt;br /&gt;&lt;br /&gt;Y luego pueden ejecutar el siguiente query, el cual debería habilitar la ejecución de Ensamblados UNSAFE.&lt;br /&gt;&lt;br /&gt;&lt;div class="codeheader"&gt;Código&lt;/div&gt;&lt;pre class="geshi"&gt;&lt;span style=" font-weight: bold;color:#993333;"&gt;ALTER&lt;/span&gt; &lt;span style=" font-weight: bold;color:#993333;"&gt;DATABASE&lt;/span&gt; TESTING&lt;br /&gt; &lt;br /&gt;&lt;span style=" font-weight: bold;color:#993333;"&gt;SET&lt;/span&gt; TRUSTWORTHY &lt;span style=" font-weight: bold;color:#993333;"&gt;ON&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style=" line-height: 1.3em;font-size:10pt;"&gt;&lt;b&gt;Resultado&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://img831.imageshack.us/i/resultj.jpg/" target="_blank"&gt;&lt;img src="http://r.i.elhacker.net/cache?url=http://img831.imageshack.us/img831/5958/resultj.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Espero les sea de ayuda,&lt;br /&gt;&lt;br /&gt;Un saludo!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5306869951512951269?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5306869951512951269/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/07/tutorial-clr-stored-procedures-sql.html#comment-form' title='8 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5306869951512951269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5306869951512951269'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/07/tutorial-clr-stored-procedures-sql.html' title='[Tutorial] CLR Stored Procedures (Sql Server)'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5933215806224883503</id><published>2010-06-15T15:36:00.010-04:30</published><updated>2010-06-15T16:20:53.942-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='.Net 4.0'/><title type='text'>[Tutorial] Nuevas Características de C# en .Net 4.0</title><content type='html'>&lt;p&gt;Entre las nuevas características del .Net Framework 4.0 se encuentran las mejoras añadidas a los lenguajes de .Net, hay otros temas importantes de los que les hablaré en otro post, como lo son Parallel Programming and Debugging, Call Hierarchy of methods, Code Contracts, Web.config transformation, entre otros.&lt;/p&gt;&lt;p&gt;Ahora veamos las mejoras a C#:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Dynamic Types (Tipos dinámicos) and Dynamic Programming (Programación dinámica)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Encontramos ahora una nueva palabra reservada, llamada dynamic. La cual esencialmente permite la comunicación o post enlazamiento de una variable. Veamos como se hace&lt;/p&gt;&lt;p&gt;Supongamos tenemos un método que tiene que retornar una clase dependiendo del valor del parámetro, es decir, no sabemos el tipo de datos de retorno, por lo tanto será object:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Product&lt;br /&gt;{&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; GetPrice()&lt;br /&gt;  {&lt;br /&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; 5;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Service&lt;br /&gt;{&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; GetPrice()&lt;br /&gt;  {&lt;br /&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; 9;&lt;br /&gt;  }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt; RetrieveItem(&lt;span class="kwrd"&gt;bool&lt;/span&gt; b)&lt;br /&gt;{&lt;br /&gt;   &lt;span class="kwrd"&gt;if&lt;/span&gt;(b)&lt;br /&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; Product();&lt;br /&gt;   &lt;span class="kwrd"&gt;else&lt;/span&gt;&lt;br /&gt;     &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; Service();&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;Ahora vamos a usar el método:&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;dynamic&lt;/span&gt; item = RetrieveItem(&lt;span class="kwrd"&gt;true&lt;/span&gt;)&lt;br /&gt;&lt;span class="kwrd"&gt;decimal &lt;/span&gt;value =  item.GetPrice();&lt;/pre&gt;&lt;p&gt;Como ven, &lt;em&gt;item&lt;/em&gt; es object como todo en .Net, PERO, esta vez es dynamic, por lo que podemos ahora esperar que compile, sabiendo de que &lt;em&gt;item &lt;/em&gt;puede ser de varios tipos. Otra forma de solucionar esto sería con clases base o interfaces, pero no siempre son la solución para este tipo de cosas realmente sencillas.&lt;/p&gt;&lt;strong&gt;Optional Parameters (Parámetros Opcionales)&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;Muchos programadores de VB.Net saben que esto no es nuevo, pero hasta ahora no había sido aplicado a C#, pero ahora lo tenemos!!&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; SetName(&lt;span class="kwrd"&gt;string&lt;/span&gt; name=&lt;span class="str"&gt;"Juan"&lt;/span&gt;)&lt;br /&gt;{&lt;br /&gt;  &lt;span class="rem"&gt;//...&lt;/span&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;p&gt;Entonces, si hacemos la llamada al método sin parámetros, no ocurrirá ninún error, puesto que el parámetro es opcional:&lt;/p&gt;&lt;pre class="csharpcode"&gt;SetName();&lt;/pre&gt;&lt;p&gt;Ya vemos que es muy sencillo y ahora nos ahorramos todas esas sobrecargas de métodos con diferentes valores para cada una.  Implementar parametros opcionales en nuestro código nos puede ayudar mucho a hacer las clases menos complejas y más fáciles de leer.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Named and Optional Arguments (Argumentos opcionales y nombrados)&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Bueno se nota á primera vista que ésta funcionalidad está muy relacionada con los parámetros opcionales, y claro que lo está pero ya veremos la diferencia. A el siguiente método solo queremos pasarle los valores de lastName y address, pero no el de firstName:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; SetInfo(&lt;span class="kwrd"&gt;string&lt;/span&gt; name=&lt;span class="str"&gt;"Juan"&lt;/span&gt;,&lt;br /&gt;                    &lt;span class="kwrd"&gt;string&lt;/span&gt; lastName=&lt;span class="str"&gt;"Andreu"&lt;/span&gt;,&lt;br /&gt;                    &lt;span class="kwrd"&gt;int&lt;/span&gt; age=23)&lt;br /&gt;{&lt;br /&gt;  &lt;span class="rem"&gt;//...&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Este método podemos llamarlo de la siguiente mánera:&lt;/pre&gt;&lt;pre class="csharpcode"&gt;SetInfo(lastName:&lt;span class="str"&gt;"Pérez"&lt;/span&gt;,age:18);&lt;/pre&gt;&lt;p&gt;Ésto lo hemos visto antes en los atributos de las clases, pero ahora está disponible para todos los métodos.&lt;/p&gt;&lt;p&gt;Espero les haya gustado,&lt;/p&gt;&lt;p align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5933215806224883503?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5933215806224883503/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/06/tutorial-nuevas-caracteristicas-de-c-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5933215806224883503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5933215806224883503'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/06/tutorial-nuevas-caracteristicas-de-c-en.html' title='[Tutorial] Nuevas Características de C# en .Net 4.0'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-513258473435271318</id><published>2010-06-12T10:22:00.001-04:30</published><updated>2010-06-12T10:22:34.444-04:30</updated><title type='text'>[Enlace] Diferencias de sintaxis entre VB y C#</title><content type='html'>&lt;p&gt;Hola, &lt;/p&gt;  &lt;p&gt;Como no uso para nada VB.Net estaba buscando el modificador de acceso internal ,por lo que encontré esta página donde sale un listado de muchas diferencias y equivalencias. &lt;/p&gt;  &lt;p&gt;Se puede notar también que VB.Net es más fácil de leer ya que es más hacia un lenguaje humano, pero C# a su vez tiene una sintaxis más limpia y pulida. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.harding.edu/fmccown/vbnet_csharp_comparison.html" target="_blank"&gt;http://www.harding.edu/fmccown/vbnet_csharp_comparison.html&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-513258473435271318?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/513258473435271318/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/06/enlace-diferencias-de-sintaxis-entre-vb.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/513258473435271318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/513258473435271318'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/06/enlace-diferencias-de-sintaxis-entre-vb.html' title='[Enlace] Diferencias de sintaxis entre VB y C#'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-6847723223090335566</id><published>2010-06-07T08:49:00.002-04:30</published><updated>2010-06-07T08:52:47.643-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Pruebas de Standards de Microsoft's IE9 vs. Realidad</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_h_H4m_HIj1c/TAzx22aEuBI/AAAAAAAAALE/i4mUacbcbaA/s1600-h/ie9-standards%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="ie9-standards" border="0" alt="ie9-standards" align="left" src="http://lh3.ggpht.com/_h_H4m_HIj1c/TAzx3QuV2RI/AAAAAAAAALI/NvddtrbAIQU/ie9-standards_thumb%5B1%5D.png?imgmax=800" width="198" height="167" /&gt;&lt;/a&gt; Todos hemos visto la noticia en donde Microsoft Internet Explorer 9 Soportaba más estándares que sus rivales: &lt;/p&gt;  &lt;p&gt;&lt;a href="http://img707.imageshack.us/img707/8936/ie9tests.png"&gt;http://img707.imageshack.us/img707/8936/ie9tests.png&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Pues, esos resultados son basados en 31 pruebas, todas hechas por Microsoft, tomando en cuenta que la prueba &amp;quot;SVG 1.1 Tiny&amp;quot; tiene más de 150 tests diferentes. &lt;/p&gt;  &lt;p&gt;Acá pueden ver los resultados reales: &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.codedread.com/svg-support.php"&gt;http://www.codedread.com/svg-support.php&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Como pueden ver, IE9 apenas pasa algunas pruebas, por lo que microsoft quiso dar la impresión de que si lo hacía. En realidad es genial de que IE ahora soporte SVG pero no de esta manera. &lt;/p&gt;  &lt;p&gt;Aprovechando el momento les cuento que safari anda por el mismo camino.Al intentar ver las pruebas de HTML5 de safari, te aparece un mensaje diciendo que tienes que tener Safari para poder verlo. Pueden verlo en ésta página: &lt;/p&gt;  &lt;p&gt;&lt;a href="http://i.imgur.com/cT08B.png"&gt;http://i.imgur.com/cT08B.png&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Dando a entender que solo safari puede ver esas pruebas.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-6847723223090335566?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/6847723223090335566/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/06/pruebas-de-standards-de-microsoft-ie9.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6847723223090335566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6847723223090335566'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/06/pruebas-de-standards-de-microsoft-ie9.html' title='Pruebas de Standards de Microsoft&amp;#39;s IE9 vs. Realidad'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_h_H4m_HIj1c/TAzx3QuV2RI/AAAAAAAAALI/NvddtrbAIQU/s72-c/ie9-standards_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-7357302911560868694</id><published>2010-06-04T14:51:00.003-04:30</published><updated>2010-06-04T14:57:14.317-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Invitación 1era Convención Virtual Internacional Tecnologías Integradas</title><content type='html'>&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_h_H4m_HIj1c/TAlS13irSBI/AAAAAAAAAK0/7lBEn-q9WVQ/s1600/top.jpeg" border="0" alt="" id="BLOGGER_PHOTO_ID_5479001507068856338" /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/latam/interop/convencion"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_h_H4m_HIj1c/TAlTMb3j_cI/AAAAAAAAAK8/gKQlAyysqa8/s1600/foot.jpeg" border="0" alt="" id="BLOGGER_PHOTO_ID_5479001894777257410" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-7357302911560868694?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/7357302911560868694/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/06/invitacion-1era-convencion-virtual.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7357302911560868694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/7357302911560868694'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/06/invitacion-1era-convencion-virtual.html' title='Invitación 1era Convención Virtual Internacional Tecnologías Integradas'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h_H4m_HIj1c/TAlS13irSBI/AAAAAAAAAK0/7lBEn-q9WVQ/s72-c/top.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5630991149417788490</id><published>2010-05-31T00:49:00.004-04:30</published><updated>2010-05-31T00:52:35.846-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blog'/><title type='text'>Sígue el blog desde facebook!</title><content type='html'>Si quieres enterarte de cuando sale una entrada nueva del blog, pues subscríbete haciendo clic en el botón que dice "Sigue este blog" en ésta aplicación de facebook llamada Networked Blogs:&lt;br /&gt;&lt;br /&gt;&lt;div id="networkedblogs_nwidget_container" style="height:360px;padding-top:10px;"&gt;&lt;div id="networkedblogs_nwidget_above"&gt;&lt;/div&gt;&lt;div id="networkedblogs_nwidget_widget" style="border:1px solid #D1D7DF;background-color:#F5F6F9;margin:0px auto;"&gt;&lt;div id="networkedblogs_nwidget_logo" style="padding:1px;margin:0px;background-color:#edeff4;text-align:center;height:21px;"&gt;&lt;a href="http://networkedblogs.com/" target="_blank" title="NetworkedBlogs"&gt;&lt;img style="border: none;" src="http://static.networkedblogs.com/static/images/logo_small.png" title="NetworkedBlogs" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div id="networkedblogs_nwidget_body" style="text-align: center;"&gt;&lt;/div&gt;&lt;div id="networkedblogs_nwidget_follow" style="padding:5px;"&gt;&lt;a style="display:block;line-height:100%;width:90px;margin:0px auto;padding:4px 8px;text-align:center;background-color:#3b5998;border:1px solid #D9DFEA;border-bottom-color:#0e1f5b;border-right-color:#0e1f5b;color:#FFFFFF;font-family:'lucida grande',tahoma,verdana,arial,sans-serif;font-size:11px;text-decoration:none;" href="http://networkedblogs.com/blog/.._el_blog_de_juan_../?ahash=ed8a631e977547055a6e080ff2bae843"&gt;Sigue este blog&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div id="networkedblogs_nwidget_below"&gt;&lt;/div&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;&lt;!-- if(typeof(networkedblogs)=="undefined"){networkedblogs = {};networkedblogs.blogId=389667;networkedblogs.shortName=".._el_blog_de_juan_..";} --&gt;&lt;/script&gt;&lt;script src="http://nwidget.networkedblogs.com/getnetworkwidget?bid=389667" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5630991149417788490?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5630991149417788490/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/05/sigue-el-blog-desde-facebook.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5630991149417788490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5630991149417788490'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/05/sigue-el-blog-desde-facebook.html' title='Sígue el blog desde facebook!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3607576617828499417</id><published>2010-05-29T09:49:00.003-04:30</published><updated>2010-05-29T09:53:18.013-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Microsoft Robotics Developer Studio liberada gratuitamente</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h_H4m_HIj1c/TAEjOHOLX8I/AAAAAAAAAKk/vPVPRBZmkKo/s1600/800px-Mars_rover_msrds_simulation.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 184px;" src="http://3.bp.blogspot.com/_h_H4m_HIj1c/TAEjOHOLX8I/AAAAAAAAAKk/vPVPRBZmkKo/s320/800px-Mars_rover_msrds_simulation.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5476697347222888386" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;Microsoft RDS es un entorno de programación y simulación en 3D para robótica, y además es compatible con otras platadormas como iRobot, LEGO Mindstorms, CoroWave y Parallax. &lt;/p&gt;  &lt;p align="justify"&gt;Ojo, esto no quiere decir que hayan liberado el código, sino, que ahora la licencia de estudiantes es gratuita y sin restricciones. &lt;/p&gt;  &lt;p&gt;Puedes descargarlo en este enlace: &lt;a title="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=c185a802-5bbe-4f28-b448-aefe63a7eff7" href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=c185a802-5bbe-4f28-b448-aefe63a7eff7"&gt;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=c185a802-5bbe-4f28-b448-aefe63a7eff7&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;em&gt;Gracias por leer&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3607576617828499417?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3607576617828499417/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/05/microsoft-robotics-developer-studio.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3607576617828499417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3607576617828499417'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/05/microsoft-robotics-developer-studio.html' title='Microsoft Robotics Developer Studio liberada gratuitamente'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h_H4m_HIj1c/TAEjOHOLX8I/AAAAAAAAAKk/vPVPRBZmkKo/s72-c/800px-Mars_rover_msrds_simulation.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3592791452896870847</id><published>2010-05-10T16:22:00.002-04:30</published><updated>2010-05-10T17:38:26.679-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Entrenamiento: Visual Studio 2010: Nuevas características</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_h_H4m_HIj1c/S-hyGhyRUiI/AAAAAAAAAKc/A07KH9CTCBc/s1600-h/vs2010%5B5%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="vs2010" border="0" alt="vs2010" align="left" src="http://lh6.ggpht.com/_h_H4m_HIj1c/S-hyG_4eFAI/AAAAAAAAAKg/QYcjsfAjBLA/vs2010_thumb%5B5%5D.jpg?imgmax=800" width="235" height="145" /&gt;&lt;/a&gt; Estimados lectores, los amigos de &lt;a href="http://www.alg.net.ve/" target="_blank"&gt;Action Learning Group&lt;/a&gt;, están planificando un entrenamiento de&lt;strong&gt; tres (3) días&lt;/strong&gt; sobre las nuevas características de Visual Studio 2010, para el mes de Mayo, específicamente para los días 19, 20 y 21 en la ciudad de Caracas, Venezuela.&lt;/p&gt;  &lt;p&gt;Este entrenamiento, forma parte del nuevo pensum de estudios técnicos para los nuevos productos Microsoft para este año.&lt;/p&gt;  &lt;p&gt;Microsoft, en alianza estratégica con Action Learning Group, ha logrado obtener un precio especial para dicho entrenamiento, para los socios de negocios que lleven impreso este boletín!!!. El precio promocional es de &lt;strong&gt;MIL DOSCIENTOS BOLIVARES FUERTES&lt;/strong&gt; (1.200 BsF) + IVA. Lo atractivo del entrenamiento, además de conocer las nuevas características que ofrece el &lt;strong&gt;.NET Framework 4.0&lt;/strong&gt;, es que nuestro gran amigo Manuel Méndez (Director Regional Microsoft para Venezuela) será el instructor.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;A&lt;/strong&gt; &lt;strong&gt;continuación les dejo los datos de contactos de Action Learning Group:&lt;/strong&gt;   &lt;br /&gt;Action Learning Group Y&amp;amp;I, C.A.   &lt;br /&gt;Dirección: calle 4 con calle 11-1, Edificio EPSON, Mezzanina.-  La Urbina Sur.  Caracas   &lt;br /&gt;Teléfonos.: 212-2427211 / 2426956   &lt;br /&gt;educacion@alg.net.ve / &lt;a href="http://www.alg.net.ve/"&gt;www.alg.net.ve&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Nota: No recivo ningún tipo de beneficio o comisión por esta publicación, simplemente les hago llegar esta información.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p align="center"&gt;Gracias por leer!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3592791452896870847?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3592791452896870847/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/05/entrenamiento-visual-studio-2010-nuevas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3592791452896870847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3592791452896870847'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/05/entrenamiento-visual-studio-2010-nuevas.html' title='Entrenamiento: Visual Studio 2010: Nuevas características'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_h_H4m_HIj1c/S-hyG_4eFAI/AAAAAAAAAKg/QYcjsfAjBLA/s72-c/vs2010_thumb%5B5%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5557579753417199522</id><published>2010-04-24T10:31:00.002-04:30</published><updated>2010-04-24T10:32:11.961-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Entrenamiento de Windows Server 2008</title><content type='html'>&lt;p&gt;&lt;b&gt;Entrenamiento Técnico – Nivel 100 – Microsoft Windows Server 2008&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Microsoft y su socio de negocios &lt;b&gt;SOLO IT NET &lt;/b&gt;, desean extenderte esta invitación para que asistas al entrenamiento técnico &lt;b&gt;Microsoft Windows Server 2008&lt;/b&gt;, el cualtendrá una duración de tres (2) días y que iniciará el día Jueves 29 de Abril  del presente año.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Dirección:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;SOLO IT NET C.A:&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;Av Urdaneta Esquina de Ibarras Edificio Caoma piso 3 Oficina 310.&lt;/p&gt;  &lt;p&gt;Teléfonos: 0212 563 0181 /428 4489&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Instructor: Ing. Julio Martus&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;Costo del Curso: Bs 700 + IVA&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Registro&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Para proceder a su confirmación, por favor, siga las siguientes instrucciones:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Enviar un correo a Marly Méndez  &lt;a href="mailto:mmendez@soloit.net"&gt;mmendez@soloit.net&lt;/a&gt; , indicando los siguientes datos personales:&lt;/li&gt;    &lt;li&gt;Apellido y Nombre&lt;/li&gt;    &lt;li&gt;Cédula de Identidad&lt;/li&gt;    &lt;li&gt;Correo electrónico&lt;/li&gt;    &lt;li&gt;Teléfono de contacto&lt;/li&gt;    &lt;li&gt;Cargo / Rol en su organización&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;Requisito: &lt;/strong&gt;Conocimiento de Windows Server.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;u&gt;La fecha límite para confirmar su participación es el 28 de Abril del 2010&lt;/u&gt;&lt;/b&gt;&lt;u&gt;.&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;img border="0" src="https://mail.google.com/?ui=2&amp;amp;ik=531f915844&amp;amp;view=att&amp;amp;th=1282d692e411522a&amp;amp;attid=0.5&amp;amp;disp=emb&amp;amp;zw" width="800" height="1" /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5557579753417199522?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5557579753417199522/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/04/entrenamiento-de-windows-server-2008.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5557579753417199522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5557579753417199522'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/04/entrenamiento-de-windows-server-2008.html' title='Entrenamiento de Windows Server 2008'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1099057717132823341</id><published>2010-04-24T10:28:00.002-04:30</published><updated>2010-04-24T10:29:16.911-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Algunas novedades en VS 2010 / .NET 4</title><content type='html'>&lt;p&gt;&lt;strong&gt;Visual Studio 2010 IDE &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Soporte para varios monitores &lt;/p&gt;  &lt;p&gt;IntelliSense – fácilmente programar con clases y métodos; búsquedas, relaciones entre clases y proyectos, generación automática de diagramas de secuencias &lt;/p&gt;  &lt;p&gt;Soported para fragmentos de código de HTM y JavaScript dentro del Editor de código &lt;/p&gt;  &lt;p&gt;Multi-targeting – compilación a versiones del Framework 2, 3, 3.5 y 4 &lt;/p&gt;  &lt;p&gt;Nueva instalación simple y rápida de TFS 2010 (puede instalar el servidor en solamente 10 minutos) para controlar código, elementos de trabajo, etc. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Características de lenguaje en VB / C# &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;VB&lt;/u&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Propiedades automáticas – implementadas; sin necesidad de codificar inicializadores de colección &lt;/li&gt;    &lt;li&gt;Inicializadores de colección – crear y rellenar con un conjunto inicial de valores &lt;/li&gt;    &lt;li&gt;Soporte de continuación de línea implícita - ya no es necesario indicar explícitamente que una instrucción continua en la siguiente línea de código &lt;/li&gt;    &lt;li&gt;Y mucho mas &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;u&gt;C#&lt;/u&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Parámetros opcionales y argumentos con nombre &lt;/li&gt;    &lt;li&gt;Co-variance y  contra-variance &lt;/li&gt;    &lt;li&gt;Y mucho mas &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;ASP.NET 4 / ASP.NET MVC 2&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;·         Funcionalidad de enrutamiento de URL integrada - le permite exponer un  motor de búsqueda, URLs y aumentar el tráfico a su sitio Web &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ViewState se puede controlar fácilmente y disminuir en tamaño &lt;/li&gt;    &lt;li&gt;Client IDs  - ahora puede controlar los controles procesados por el servidor &lt;/li&gt;    &lt;li&gt;Soporte mejorado para ASP.NET Dynamic Data   &lt;/li&gt;    &lt;li&gt;Más controles de diseño para datos y gráficos &lt;/li&gt;    &lt;li&gt;Más plantillas de proyectos  &lt;/li&gt;    &lt;li&gt;Mejoras en SEO que le facilitan manejar tráfico a sitios orientados al público.  &lt;/li&gt;    &lt;li&gt;ASP.NET MVC 2 le proporciona una forma para construir sitios web y aplicaciones utilizando un patrón en función MVC &lt;/li&gt;    &lt;li&gt;ASP.NET MVC -  le ayuda a fácilmente habilitar la lógica de validación entre cliente y servidor &lt;/li&gt;    &lt;li&gt;El sintaxis nuevo &amp;lt;%: %&amp;gt; en ASP.NET le facilita a codificar HTML &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Visual Studio 2010 incluye herramientas para pruebas unitarias y TDD.  &lt;/p&gt;  &lt;p&gt;Las aplicaciones de ASP.net ahora son mucho más fáciles de implementar. Puede publicar sus sitios Web y aplicaciones en un servidor de ensayo o de producción directamente desde Visual Studio 2010. Visual Studio facilita la transferencia de todos los archivos, código, configuración, esquema de la base de datos y datos en un paquete completo. &lt;/p&gt;  &lt;p&gt;VS 2010 también le facilita administrar la configuración de archivos de configuración (web.config) separados dependiendo de si está en modo de depuración, lanzamiento, ensayo o de producción. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;WPF 4 / Silverlight 4&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Novedades incluyen &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Más controles de diseño &lt;/li&gt;    &lt;li&gt;Manipulación de gráficos -  (composición en caché, pixel shader, soporte 3D, funciones de aceleración de animación, etc.) &lt;/li&gt;    &lt;li&gt;Diccionarios personalizado &lt;/li&gt;    &lt;li&gt;Selección y opciones de pincel de intercalación &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;WPF incluye novedades para permitirle aprovechar las nuevas características de Windows 7 – incluidas Multi-touch y la integración del Shell de Windows 7. &lt;/p&gt;  &lt;p&gt;Silverlight 4 incluye facilidades para construir aplicaciones de negocios grandes y aplicaciones fuera del explorador. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;SharePoint / Azure&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Ya puede crear, editar,  compilar y depurar aplicaciones de SharePoint desde el IDE de Visual Studio 2010.  También puede utilizar SharePoint con TFS 2010. &lt;/p&gt;  &lt;p&gt;Puede crear aplicaciones Azure – aplicaciones ASP.NET / WCF en la nube. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Acceso a Datos&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Entity Framework 4 incluye &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Soporte para  el modelo code-first y desarrollo POCO (Plain Old CLR Object) &lt;/li&gt;    &lt;li&gt;Soporte a carga diferida &lt;/li&gt;    &lt;li&gt;Soporte incorporado para pluralización/singularización de nombres de tablas/propiedades en el Diseñador &lt;/li&gt;    &lt;li&gt;Soporte completo para operaciones LINQ &lt;/li&gt;    &lt;li&gt;Capacidad de exponer opcionalmente claves foráneas en objetos de modelo &lt;/li&gt;    &lt;li&gt;Soporte para APIs desconectado para el manejo de N niveles &lt;/li&gt;    &lt;li&gt;Soporte para plantillas de personalización en VS 2010 para permitirle a personalizar y automatizar cómo se genera el código en el  Diseñador de datos &lt;/li&gt;    &lt;li&gt;Y mucho mas &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;WCF and Workflow&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Nuevas características – mejoras en REST (un modelo de programación para la creación rápida de aplicaciones orientadas a servicios), WCF Data Services (Astoria) y WCF RIA Services que permiten exponer y trabajar fácilmente con datos de clientes remotos &lt;/p&gt;  &lt;p&gt;Windows Workflow es más rápido e incluye servicios para diagramas de flujo. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;CLR / Core .NET Library&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;.NET 4 incluye el nuevo motor CLR 4 – más rápido y más eficiente, con soporte a COM Interop.  CLR 4 ejecuta al mismo tiempo con versiones anteriores del CLR – permitiéndole utilizar 2 versiones de.NET en el mismo proceso. &lt;/p&gt;  &lt;p&gt;.NET 4 BCL incluye suporte para el desarrollo paralelo de aplicaciones para aprovechar el rendimiento de equipos con múltiple CPUs. &lt;/p&gt;  &lt;p&gt;.NET 4 también incluye Dynamic Language Runtime (DLR) – que le ayuda a utilizar la funcionalidad de lenguajes dinámicos con .NET.  &lt;/p&gt;  &lt;p&gt;MEF – una librería de extensibilidad incluida en .NET 4.  &lt;/p&gt;  &lt;p&gt;.NET 4 Client Profile &lt;/p&gt;  &lt;p&gt;Tamaño reducido del paquete de distribución para .NET 4 (x86 completo de .NET 4 es de 36MB).  &lt;/p&gt;  &lt;p&gt;También se incluye un subconjunto de NET que se puede utilizar para optimizar las instalaciones de aplicaciones clientes. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Visual C++&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Mejoras en: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Intellisense &lt;/li&gt;    &lt;li&gt;MSBuild &lt;/li&gt;    &lt;li&gt;Depuración paralela &lt;/li&gt;    &lt;li&gt;MFC &lt;/li&gt;    &lt;li&gt;Optimizaciones en el lenguaje  y el compilador de C++ &lt;/li&gt;    &lt;li&gt;Y mucho mas&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/andygon/archive/2010/04/15/visual-studio-2010-net-4.aspx" target="_blank"&gt;Fuente&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h4 align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/h4&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1099057717132823341?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1099057717132823341/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/04/algunas-novedades-en-vs-2010-net-4.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1099057717132823341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1099057717132823341'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/04/algunas-novedades-en-vs-2010-net-4.html' title='Algunas novedades en VS 2010 / .NET 4'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3003784921924344740</id><published>2010-04-08T12:12:00.003-04:30</published><updated>2010-04-08T12:18:05.128-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Evento: Microsoft te invita a La Eficiencia en tus manos.</title><content type='html'>&lt;p&gt;El 21 de Abril de 2010 llega un extraordinario lanzamiento virtual con las soluciones de desarrollo e infraestructura más avanzadas del mercado.&lt;/p&gt;  &lt;p&gt;El evento TI de la década, dedicado a potenciar tu capacidad de innovación y productividad.&lt;/p&gt;&lt;p&gt;Temas a tratar:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;Microsoft Office 2010&lt;/li&gt;&lt;li&gt;Microsoft Expression &lt;/li&gt;&lt;li&gt;Microsoft Sharepoint Server 2010&lt;/li&gt;&lt;li&gt;Windows Azure&lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010&lt;/li&gt;&lt;li&gt;Microsoft Forefront&lt;/li&gt;&lt;li&gt;Microsoft .Net&lt;/li&gt;&lt;li&gt;Microsoft Sql Azure&lt;/li&gt;&lt;li&gt;Microsoft  Sql Server 2008 R2&lt;/li&gt;&lt;li&gt;Microsoft Online Services&lt;/li&gt;&lt;li&gt;Microsoft Silverlight &lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;Esperemos que sea muy bueno y no se olviden de comentar sus experiencias del evento en éste post!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/latam/laeficienciaentusmanos/" target="_blank"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_h_H4m_HIj1c/S74HbgsW7lI/AAAAAAAAAKQ/Bcx9Ii34yME/image%5B12%5D.png?imgmax=800" width="439" height="317" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3003784921924344740?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3003784921924344740/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/04/evento-microsoft-te-invita-la.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3003784921924344740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3003784921924344740'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/04/evento-microsoft-te-invita-la.html' title='Evento: Microsoft te invita a La Eficiencia en tus manos.'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_h_H4m_HIj1c/S74HbgsW7lI/AAAAAAAAAKQ/Bcx9Ii34yME/s72-c/image%5B12%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5653946832226502357</id><published>2010-03-26T10:09:00.002-04:30</published><updated>2010-03-26T10:10:26.218-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Miscelaneos'/><title type='text'>Lady Gaga - Poker Face  por Applegirl (usando iPhones)</title><content type='html'>&lt;p&gt;Un cover de Poker Face de Lady Gaga realizado con 4 iPhones, está realmente bien realizado:&lt;/p&gt;  &lt;p&gt;   &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:08e931dd-8d81-4dd2-a3a4-46dfce313292" class="wlWriterEditableSmartContent"&gt;&lt;div id="fb03dcc1-6d12-4372-b48e-a550a9aadb86" style="margin: 0px; padding: 0px; display: inline;"&gt;&lt;div&gt;&lt;a href="http://www.youtube.com/watch?v=nzh2UygPwDU&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" target="_new"&gt;&lt;img src="http://lh3.ggpht.com/_h_H4m_HIj1c/S6zHKSWVjmI/AAAAAAAAAKM/wRoGLOUKKm4/video83ef82eca9b8%5B2%5D.jpg?imgmax=800" style="border-style: none" galleryimg="no" onload="var downlevelDiv = document.getElementById('fb03dcc1-6d12-4372-b48e-a550a9aadb86'); downlevelDiv.innerHTML = &amp;quot;&amp;lt;div&amp;gt;&amp;lt;object width=\&amp;quot;425\&amp;quot; height=\&amp;quot;355\&amp;quot;&amp;gt;&amp;lt;param name=\&amp;quot;movie\&amp;quot; value=\&amp;quot;http://www.youtube.com/v/nzh2UygPwDU&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;&amp;amp;hl=en\&amp;quot;&amp;gt;&amp;lt;\/param&amp;gt;&amp;lt;embed src=\&amp;quot;http://www.youtube.com/v/nzh2UygPwDU&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;&amp;amp;hl=en\&amp;quot; type=\&amp;quot;application/x-shockwave-flash\&amp;quot; width=\&amp;quot;425\&amp;quot; height=\&amp;quot;355\&amp;quot;&amp;gt;&amp;lt;\/embed&amp;gt;&amp;lt;\/object&amp;gt;&amp;lt;\/div&amp;gt;&amp;quot;;" alt=""&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5653946832226502357?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5653946832226502357/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/03/lady-gaga-poker-face-por-applegirl.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5653946832226502357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5653946832226502357'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/03/lady-gaga-poker-face-por-applegirl.html' title='Lady Gaga - Poker Face  por Applegirl (usando iPhones)'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_h_H4m_HIj1c/S6zHKSWVjmI/AAAAAAAAAKM/wRoGLOUKKm4/s72-c/video83ef82eca9b8%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5726785068825812492</id><published>2010-03-24T12:11:00.002-04:30</published><updated>2010-03-24T12:14:41.570-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><title type='text'>Nuevo dominio!</title><content type='html'>Estimados lectores, la nueva noticia es que encontré libre el dominio andreujuan.com ! Comprado y apuntando hacia el blog! por lo que ahora pueden entrar directamente, o bien, mediante la dirección antigua que los va a redirigir a esta nueva.&lt;br /&gt;&lt;br /&gt;Muchas gracias a todos!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5726785068825812492?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5726785068825812492/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/03/nuevo-dominio.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5726785068825812492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5726785068825812492'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/03/nuevo-dominio.html' title='Nuevo dominio!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-6850922765880411886</id><published>2010-03-04T14:42:00.009-04:30</published><updated>2010-03-05T11:53:21.117-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Networking'/><title type='text'>Traceroute en .Net</title><content type='html'>&lt;p&gt;Estos días estaba revisando un proyecto personal, y vi una clase que había hecho hace tiempo, y bastante interezante, es una implementacion de Traceroute/Tracert en .Net (C Sharp).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;¿Cómo funciona un Traceroute?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;No es tan complicado como pudiésemos llegar a pensar. Para explicarlo imaginémos el siguiente esquema de red:&lt;/p&gt;  &lt;p&gt;A-----B-----C-----D-----E&lt;/p&gt;  &lt;p&gt;Donde A es el equipo host local, y E el host remoto. El funcionamiendo de la aplicacion es la siguiente. Se hace un ping hacia el remoto pero con una opcion diferente, TTL = 1, es decir Time To Live = 1. Esto quiere decir que apenas el paquete salga hacia E, éste nada más va a poder pasar por un Nodo, Router, Modem, etc y el resultado del ping nos va a retornar la Dirección IP de dicho Nodo, en éste caso de B.&lt;/p&gt;  &lt;p&gt;De ésta manera vamos aumentando el TTL de cada intento y vamos guardando la informacion hasta que el status de la respuesta del Ping sea satisfactoria (IPStatus.Success).&lt;/p&gt;&lt;a name='more'&gt;&lt;/a&gt; &lt;p&gt;Ahora veamos el código:&lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Net.NetworkInformation;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; NetworkSupervisor.ComponentModel&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;{&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &lt;span class="rem"&gt;//Delegado para los eventos del Traceroute&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;delegate&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; TracertEventHandler(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, TracertEventArgs e);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;    &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Tracert&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;        &lt;span class="kwrd"&gt;int&lt;/span&gt;     m_timeout   = 0;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;        &lt;span class="kwrd"&gt;string&lt;/span&gt;  m_host      = &lt;span class="str"&gt;""&lt;/span&gt;;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;        &lt;span class="kwrd"&gt;int&lt;/span&gt;     m_maxHops   = 0;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; TracertEventHandler EchoReceived;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; TracertEventHandler ErrorReceived;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; TracertEventHandler TracertCompleted;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; Tracert(&lt;span class="kwrd"&gt;string&lt;/span&gt; host, &lt;span class="kwrd"&gt;int&lt;/span&gt; TimeOut, &lt;span class="kwrd"&gt;int&lt;/span&gt; maxHops) &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  22:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  23:  &lt;/span&gt;            m_host = host;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  24:  &lt;/span&gt;            m_timeout = TimeOut;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  25:  &lt;/span&gt;            m_maxHops = maxHops;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  26:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  27:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Start() &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  28:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  29:  &lt;/span&gt;            PingReply reply;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  30:  &lt;/span&gt;            Ping pinger = &lt;span class="kwrd"&gt;new&lt;/span&gt; Ping();&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  31:  &lt;/span&gt;            PingOptions options = &lt;span class="kwrd"&gt;new&lt;/span&gt; PingOptions();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  32:  &lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  33:  &lt;/span&gt;            &lt;span class="rem"&gt;//Con esto le decimos al paquete que nada más salte un equipo.&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  34:  &lt;/span&gt;            options.Ttl = 1;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  35:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  36:  &lt;/span&gt;            options.DontFragment = &lt;span class="kwrd"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  37:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  38:  &lt;/span&gt;            &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] buffer = Encoding.ASCII.GetBytes(&lt;span class="str"&gt;"Algo de datos"&lt;/span&gt;);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  39:  &lt;/span&gt;            &lt;span class="kwrd"&gt;try&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  40:  &lt;/span&gt;            {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  41:  &lt;/span&gt;                &lt;span class="kwrd"&gt;do&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  42:  &lt;/span&gt;                {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  43:  &lt;/span&gt;                    &lt;span class="rem"&gt;//Tiempo antes del comando&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  44:  &lt;/span&gt;                    DateTime start = DateTime.Now;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  45:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  46:  &lt;/span&gt;                   &lt;span class="rem"&gt;//Mandamos el ping&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  47:  &lt;/span&gt;                    reply = pinger.Send(m_host,&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  48:  &lt;/span&gt;                                        m_timeout,&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  49:  &lt;/span&gt;                                        buffer,&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  50:  &lt;/span&gt;                                        options);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  51:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  52:  &lt;/span&gt;                    &lt;span class="rem"&gt;//Restamos la diferencia de tiempo para conocer la latencia.&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  53:  &lt;/span&gt;                    &lt;span class="kwrd"&gt;long&lt;/span&gt; milliseconds = DateTime.Now.Subtract(start).Milliseconds;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  54:  &lt;/span&gt;                    &lt;span class="kwrd"&gt;if&lt;/span&gt; ((reply.Status == IPStatus.TtlExpired)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  55:  &lt;/span&gt;                       || (reply.Status == IPStatus.Success))&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  56:  &lt;/span&gt;                    {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  57:  &lt;/span&gt;                        &lt;span class="rem"&gt;//Damos respuesta en caso de que encontremos un host&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  58:  &lt;/span&gt;                        &lt;span class="rem"&gt;//o que se haya finalizado el proceso.&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  59:  &lt;/span&gt;                        OnEchoReceived(reply, milliseconds, options.Ttl);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  60:  &lt;/span&gt;                    }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  61:  &lt;/span&gt;                    &lt;span class="kwrd"&gt;else&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  62:  &lt;/span&gt;                    {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  63:  &lt;/span&gt;                        OnErrorReceived(reply, milliseconds);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  64:  &lt;/span&gt;                    }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  65:  &lt;/span&gt;                    options.Ttl++;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  66:  &lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  67:  &lt;/span&gt;                   &lt;span class="rem"&gt;//Mientras no haya terminado, es decir, no sea Success&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  68:  &lt;/span&gt;                   &lt;span class="rem"&gt;//seguimos mandando ping con un TTL aumentado.&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  69:  &lt;/span&gt;      &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  70:  &lt;/span&gt;                   &lt;span class="rem"&gt;// Notemos que cuando la resuesta es Success &lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  71:  &lt;/span&gt;                   &lt;span class="rem"&gt;//es porque el paquete llego al destino&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  72:  &lt;/span&gt;                } &lt;span class="kwrd"&gt;while&lt;/span&gt; ((reply.Status != IPStatus.Success)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  73:  &lt;/span&gt;                        &amp;amp;&amp;amp; (options.Ttl &amp;lt; m_maxHops));&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  74:  &lt;/span&gt;            }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  75:  &lt;/span&gt;            &lt;span class="kwrd"&gt;catch&lt;/span&gt; (PingException pex)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  76:  &lt;/span&gt;            {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  77:  &lt;/span&gt;                &lt;span class="rem"&gt;//Acá pueden implementar algo en caso de algun error.&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  78:  &lt;/span&gt;                &lt;span class="kwrd"&gt;throw&lt;/span&gt; pex.InnerException;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  79:  &lt;/span&gt;            }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  80:  &lt;/span&gt;            &lt;span class="kwrd"&gt;finally&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  81:  &lt;/span&gt;            {&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  82:  &lt;/span&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (TracertCompleted != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  83:  &lt;/span&gt;                    TracertCompleted(&lt;span class="kwrd"&gt;this&lt;/span&gt;, &lt;span class="kwrd"&gt;new&lt;/span&gt; TracertEventArgs(&lt;span class="kwrd"&gt;null&lt;/span&gt;, 0, 0));&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  84:  &lt;/span&gt;            }   &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  85:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  86:  &lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  87:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  88:  &lt;/span&gt;        &lt;span class="rem"&gt;//Manejo de los eventos.&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  89:  &lt;/span&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnErrorReceived(PingReply reply, &lt;span class="kwrd"&gt;long&lt;/span&gt; milliseconds)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  90:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  91:  &lt;/span&gt;            InvokeErrorReceived(reply, milliseconds);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  92:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  93:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  94:  &lt;/span&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnEchoReceived(PingReply reply, &lt;span class="kwrd"&gt;long&lt;/span&gt; milliseconds, &lt;span class="kwrd"&gt;int&lt;/span&gt; ttl)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  95:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  96:  &lt;/span&gt;            InvokeEchoReceived(reply, milliseconds, ttl);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  97:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  98:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; InvokeEchoReceived(PingReply reply, &lt;span class="kwrd"&gt;long&lt;/span&gt; milliseconds, &lt;span class="kwrd"&gt;int&lt;/span&gt; ttl)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  99:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt; 100:  &lt;/span&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (EchoReceived != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt; 101:  &lt;/span&gt;                EchoReceived(&lt;span class="kwrd"&gt;this&lt;/span&gt;, &lt;span class="kwrd"&gt;new&lt;/span&gt; TracertEventArgs(reply, milliseconds,ttl));&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt; 102:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt; 103:  &lt;/span&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; InvokeErrorReceived(PingReply reply, &lt;span class="kwrd"&gt;long&lt;/span&gt; milliseconds)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt; 104:  &lt;/span&gt;        {&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt; 105:  &lt;/span&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (ErrorReceived != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt; 106:  &lt;/span&gt;                ErrorReceived(&lt;span class="kwrd"&gt;this&lt;/span&gt;, &lt;span class="kwrd"&gt;new&lt;/span&gt; TracertEventArgs(reply, milliseconds,0));&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt; 107:  &lt;/span&gt;        }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt; 108:  &lt;/span&gt;    }&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt; 109:  &lt;/span&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;p align="center"&gt;Espero les sea de ayuda! &lt;/p&gt;&lt;p align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-6850922765880411886?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/6850922765880411886/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/03/traceroute-en-net.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6850922765880411886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6850922765880411886'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/03/traceroute-en-net.html' title='Traceroute en .Net'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5499234585328555648</id><published>2010-03-01T15:26:00.010-04:30</published><updated>2010-03-01T16:03:50.935-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Eventos Microsoft Venezuela</title><content type='html'>&lt;div align="justify"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 480px;" src="http://1.bp.blogspot.com/_h_H4m_HIj1c/S4wgj6rv2oI/AAAAAAAAAJw/jmIeWN9LEuc/s400/image005.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5443761851004344962" /&gt;&lt;br /&gt;Microsoft Venezuela te invita a disfrutar de los eventos presenciales de tecnologías que estaremos ofreciendo para desarrolladores y profesionales de infraestructura donde tendrás la oportunidad de consultar a nuestros especialistas las dudas acerca de las diversas tecnologías, estos eventos se estarán realizando en las instalaciones de Microsoft Venezuela ubicada en la avenida principal la Castellana, Centro Letonia Piso 10. Salón Venezuela. El cronograma es el siguiente:&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#4455FF; color:white;"&gt;&lt;b&gt;"Introducción a Windows Communication Foundation con Framework 4"&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#BFCFFF; color:black;"&gt;&lt;br /&gt;En esta sesión se mostrara a los desarrolladores como pueden utilizar las nuevas tecnologías, de manera independiente o en conjunto, para no tener que sacrificar la facilidad de creación de servicios por servicios escalables y de rendimiento. Demostrando para las nuevas versiones de WCF.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Fecha&lt;/b&gt;: Miércoles 03 de Marzo 2010&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hora&lt;/b&gt;: 06:30 pm&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msevents.microsoft.com/cui/EventDetail.aspx?culture=es-VE&amp;amp;EventID=1032443057&amp;amp;IO=CWCCjQvDWIzEslRfzimizw%3d%3d"&gt;Regístrate YA!&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#4455FF; color:white;"&gt;&lt;b&gt;"Construyendo aplicaciones enriquecidas para la web consumiendo APIs y servicios MS"&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#BFCFFF; color:black;"&gt;&lt;br /&gt;Aprenda la manera más eficaz y sencilla para desarrollar aplicaciones Web consumiendo APIs disponibles y servicios de Microsoft, con una demo que permitirá mostrar diversos escenarios web para el desarrollador.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Fecha&lt;/b&gt;: Miércoles 09 de Marzo 2010&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hora&lt;/b&gt;: 06:30 pm&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msevents.microsoft.com/cui/EventDetail.aspx?culture=es-VE&amp;amp;EventID=1032443059&amp;amp;IO=CWCCjQvDWIzziWoGeB0DUg%3d%3d"&gt;Regístrate YA!&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#4455FF; color:white;"&gt;&lt;b&gt;"Administrando Servidores de VMWare y Hyper-V con System Center Virtual Machine Manager"&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#BFCFFF; color:black;"&gt;&lt;br /&gt;Esta sesión te permitirá conocer la manera de administrar servidores VMWare y Hyper –V usando System Center Virtual Machine Manager cómo herramienta de administración.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Fecha&lt;/b&gt;: Miércoles 11 de Marzo 2010&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hora&lt;/b&gt;: 06:30 pm&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032443067&amp;amp;Culture=es-VE"&gt;Regístrate YA!&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#4455FF; color:white;"&gt;&lt;b&gt;"Nuevas Características de SharePoint 2010 para Desarrolladores "&lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="Background-color:#BFCFFF; color:black;"&gt;&lt;br /&gt;En esta sesión se da a conocer las nuevas características de SharePoint para desarrolladores, como se puede ser más productivo y desarrollar sites de colaboración en menor tiempo y más eficientes.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Fecha&lt;/b&gt;: Miércoles 16 de Marzo 2010&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hora&lt;/b&gt;: 06:30 pm&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msevents.microsoft.com/cui/EventDetail.aspx?culture=es-VE&amp;amp;EventID=1032443057&amp;amp;IO=CWCCjQvDWIzEslRfzimizw%3d%3d"&gt;Regístrate YA!&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;Espero puedan asistir y comentar sobre este evento que se ve muy interezante. &lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Gracias por leer!&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5499234585328555648?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5499234585328555648/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/03/eventos-microsoft-venezuela.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5499234585328555648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5499234585328555648'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/03/eventos-microsoft-venezuela.html' title='Eventos Microsoft Venezuela'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h_H4m_HIj1c/S4wgj6rv2oI/AAAAAAAAAJw/jmIeWN9LEuc/s72-c/image005.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3865191741073360214</id><published>2010-02-26T14:05:00.002-04:30</published><updated>2010-02-26T16:08:41.240-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><title type='text'>Antivirus Gratuito: Microsoft Security Essentials</title><content type='html'>&lt;P&gt;Microsoft Security Essentials es una protección en tiempo real para tu PC en contra de virus, spyware y otros tipos de software maliciosos.&lt;br /&gt;&lt;/P&gt;Además, se ejecuta sin molestar mucho y eficientemente sin interrupciones ni perdidas de tiempo.&lt;P&gt;Pueden descargarlo de este link: &lt;A href="http://www.microsoft.com/Security_Essentials/"&gt;http://www.microsoft.com/Security_Essentials/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;br /&gt;&lt;/P&gt;&lt;P align="center"&gt;&lt;EM&gt;Gracias por leer!&lt;/EM&gt;&lt;/P&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3865191741073360214?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3865191741073360214/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2010/02/antivirus-gratuito-microsoft-security.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3865191741073360214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3865191741073360214'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2010/02/antivirus-gratuito-microsoft-security.html' title='Antivirus Gratuito: Microsoft Security Essentials'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2998532604211093721</id><published>2009-12-05T14:53:00.002-04:30</published><updated>2009-12-05T14:56:58.357-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><title type='text'>El foro del blog de Juan!!</title><content type='html'>&lt;p&gt;Hola a todos, hoy les traigo la noticia de que ahora tenemos un foro.&lt;/p&gt;&lt;p&gt;Me pareció una buena idea ya que recibí varios emails pidiendo uno y ahora lo tenemos!&lt;/p&gt;&lt;p&gt;La dirección es:&lt;a href="http://andreujuan.techno-zone.net/"&gt; http://andreujuan.techno-zone.net/&lt;/a&gt; o pueden entrar por el enlace "Foro" en el menú de arriba.&lt;/p&gt;&lt;p&gt;Gracias al lector José Delgado de Uruguay por conseguir el proveedor del foro.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;Gracias por leer, y espero su participación en el foro!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2998532604211093721?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2998532604211093721/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/12/el-foro-del-blog-de-juan.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2998532604211093721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2998532604211093721'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/12/el-foro-del-blog-de-juan.html' title='El foro del blog de Juan!!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-6231166542925106701</id><published>2009-11-18T10:21:00.002-04:30</published><updated>2009-11-18T10:33:16.999-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Microsoft abrirá los compiladores de C# y VB.Net</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.aqlanza.com/images/Microsoft.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px;" src="http://www.aqlanza.com/images/Microsoft.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;Microsoft, siempre ha ido mejorando a los lenguajes de .Net C# y Visual Basic.Net, planea ahora abrir (destapar) los compiladores  de dichos lenguajes y a la vez añadir nuevas capacidades para programación asíncrona y inmutabilidad.&lt;/p&gt;&lt;p align="justify"&gt;Con dicha apertura, Microsoft se saldrá de ese modo "caja negra" en el que siempre ha estado y dejará ver a los desarrolladores lo que pasa dentro de los compiladores, ofreciendo muchos más beneficios. "Usando las mismas estructuras de datos que utiliza el compilador es increíblemente útil" dice un representante de Microsoft. &lt;/p&gt;&lt;p align="justify"&gt;Con esa vista dentro de los compiladores, los desarrolladores podrán, por ejemplo, analizar el código o incluso simplificar la construcción de los refactorings. &lt;/p&gt;&lt;p align="center"&gt;&lt;em&gt;Así que esperamos pronto que esto suceda!&lt;/em&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-6231166542925106701?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/6231166542925106701/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/11/microsoft-abrira-los-compiladores-de-c.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6231166542925106701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6231166542925106701'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/11/microsoft-abrira-los-compiladores-de-c.html' title='Microsoft abrirá los compiladores de C# y VB.Net'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2086990456953862091</id><published>2009-11-03T22:11:00.003-04:30</published><updated>2009-11-03T22:25:58.326-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Chistes'/><title type='text'>Chiste: Explicando términos técnicos</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h_H4m_HIj1c/SvDtLAZkUaI/AAAAAAAAAE8/Uk3_vyFylRc/s1600-h/joke.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 250px;" src="http://3.bp.blogspot.com/_h_H4m_HIj1c/SvDtLAZkUaI/AAAAAAAAAE8/Uk3_vyFylRc/s200/joke.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5400076726558806434" /&gt;&lt;/a&gt;&lt;br /&gt;Un estudiante intelectual está en una entrevista de trabajo en una gran empresa de tecnología. El estudiante ya estaba bastante aburrido con tantas preguntas sencillas. Después de 20 minutos, la persona que lo estaba entrevistando (mirando la lista de la planilla de entrevista) le pregunta al estudiante: "Entonces, ¿Usted me puede decir qué es el Polimorfismo?"&lt;br /&gt;&lt;br /&gt;No hay problema, dice el estudiante. "El Polimorfismo consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de llamar a los métodos de dicha clase o subclases"&lt;br /&gt;&lt;br /&gt;"Ummmm" dice el que lo entrevista, algo sorprendido ahora le pregunta: "Ahora ¿Puedes explicar eso en términos que un Gerente pueda entender?"&lt;br /&gt;&lt;br /&gt;"Claro!!", responde el estudiante: "Es mágia!!"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2086990456953862091?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2086990456953862091/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/11/chiste-explicando-terminos-tecnicos.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2086990456953862091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2086990456953862091'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/11/chiste-explicando-terminos-tecnicos.html' title='Chiste: Explicando términos técnicos'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h_H4m_HIj1c/SvDtLAZkUaI/AAAAAAAAAE8/Uk3_vyFylRc/s72-c/joke.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3890082966733348652</id><published>2009-10-27T21:26:00.009-04:30</published><updated>2009-10-28T21:58:12.083-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Nueva Carrera- MCITP: Entreprise Administrator‏</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.newhorizons.com/LOCALWEBADMIN/images/405/z_MCITP.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 194px; height: 105px;" src="http://www.newhorizons.com/LOCALWEBADMIN/images/405/z_MCITP.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#ffc000;"&gt;NO&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#4f6228;"&gt;IX&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#c00000;"&gt;NO&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#ffc000;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt;LEARNING&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0d0d0d;"&gt;, &lt;/span&gt;&lt;/b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0d0d0d;"&gt;tiene el agrado en  presentarles el programa de adiestramiento en  Software propietario de manejo y  administración en sistemas operativos &lt;/span&gt;&lt;b&gt;MCITP: Enterprise  Administrator&lt;/b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0d0d0d;"&gt;,  conjuntamente con la inversión económica y los requisitos de inscripción al  mismo, esperando sea de su satisfacción, para cualquier duda estamos a la  orden.&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#0D0D0D;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#0D0D0D;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;span class="Apple-style-span"  style="color:#0D0D0D;"&gt;&lt;p class="ecxMsoNormal"&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#4f6228;"&gt;Detalles:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"&gt; &lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;span style="color:black;"&gt;Los MCITP son candidatos capaces  de desplegar, construir, diseñar, optimizar, las tecnologías de explotación de  una función de trabajo en particular. Ellos hacen el diseño y la tecnología de  las decisiones necesarias para garantizar el éxito de los proyectos de  implementación de tecnología.&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 130%; MARGIN-BOTTOM: 12pt; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;b&gt;&lt;span style="color:black;"&gt;¿Por qué obtener la  certificación?&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;span style="color:black;"&gt;Ganar una certificación de  Microsoft valida su experiencia y conocimientos en el uso de productos y  soluciones de Microsoft. Diseñado para ser relevantes en el actual rápidamente  cambiante mercado de TI, Certificaciones Microsoft ayudará a utilizar las  tecnologías en evolución, afinar sus habilidades de solución de problemas, y  mejorar su satisfacción en el trabajo. &lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;Si usted es  nuevo a la tecnología, el cambio de trabajo, o un profesional de, certificarse  demuestra a los clientes, colegas y empleadores que se han comprometido a  avanzar en sus competencias y la asunción de mayores desafíos. Además, la  certificación le proporciona acceso a exclusivos Microsoft Certified  Professional (MCP) de los recursos y beneficios, incluyendo las oportunidades  para conectarse con una vasta red mundial de MCP.&lt;/p&gt;&lt;p style="LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="LINE-HEIGHT: 130%; BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: justify"&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-family:'Calibri','sans-serif';color:#c00000;"&gt;Contenido:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;table style="WIDTH: 390pt; BORDER-COLLAPSE: collapse" class="ecxMsoNormalTable" border="0" cellspacing="0" cellpadding="0" width="612"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 2.25pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="102"&gt; &lt;p style="TEXT-ALIGN: center; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: -7.1pt; MARGIN-RIGHT: -5.4pt" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; MODULO&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 2.25pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Curso&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; (Moc)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 2.25pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;NOMBRE&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 2.25pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;EXAMEN&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 2.25pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;CERTIFICACION&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"   style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #95b3d7; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" rowspan="2" width="102"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;I&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Soporte Técnico de Redes&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Introducción a las Redes.  Teoría Básica de Redes, Tipos de Redes, Cableado Estructurado, Direccionamiento  IP&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6292A&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Instalación  y Configuración de Windows 7 Cliente&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span class="ecxdetailpagescontentleadininline"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;70-680&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Microsoft Certified  Professional&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span class="ecxdetailpagescontentleadininline"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;MCTS: Windows 7&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #95b3d7; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" rowspan="3" width="102"&gt; &lt;p style="TEXT-ALIGN: center; LINE-HEIGHT: 115%; MARGIN-BOTTOM: 10pt" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows Server 2008, Instalación,  Configuración e Infraestructura de Red&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6419&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configurando, Administrando y  Manteniendo Windows Server 2008 Servers&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6420&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Fundamentos de Aplicaciones e  Infraestructura de Red con Windows Server 2008&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6421&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configuración y Solución de  Problemas de Infraestructura de Redes con Windows Server 2008&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;70-642&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #365f91; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: justify; MARGIN-LEFT: 1.65pt" class="ecxMsoNormal"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;MCTS: Windows Server 2008 Network Infrastructure  Configuration&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #92cddc; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" rowspan="3" width="102"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span lang="EN-US"  style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;II&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows Server 2008 Directorio Activo&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:#333333;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6424&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Fundamentos de Windows Server  2008 de Directorio Activo&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6425&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configuración y solución de  problemas de Windows Server 2008 de dominio de Servicios de Directorio  Activo&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6426&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configuración y solución de  problemas de identidad y soluciones de acceso de Windows Server 2008 de  Directorio Activo&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;70-640&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #31849b; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;MCTS: Windows Server 2008 Active Directory  Configuration&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #548dd4; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" rowspan="3" width="102"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;III&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center; LINE-HEIGHT: 115%" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%; "&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows Server  2008 Configuración de Aplicaciones de Infraestructura&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6418&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Migrando Windows Server 2008.  Duración&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6427&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configuración y solución de  problemas de Internet Information Server en Windows Server 2008&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6428&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Configuración y solución de  problemas de Windows Server 2008 de Servicios de Terminal Server&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;70-643&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="color:#FFFFFF;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows Server 2008 Applications Infrastructure  Configuration&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span lang="EN-US"  style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: #4f81bd 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 76.3pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #548dd4; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" rowspan="3" width="102"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span lang="EN-US"  style="color:#548dd4;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Diseños para  trabajar con Windows server 2008&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:#548dd4;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6435&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Diseño de un equipo con Windows  Server 2008 Infraestructura de Redes&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6436&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Diseño de un equipo con Windows  Server 2008 Directorio Activo de Infraestructuras y Servicios&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="66"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;6437&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 155.95pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="208"&gt; &lt;p class="ecxMsoNormal"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;El diseño de una aplicación de  Windows Server 2008 Infraestructura&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 63.75pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="85"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;span style="color:white;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;70-647&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;&lt;span style="color:white;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 4cm; PADDING-RIGHT: 5.4pt; BACKGROUND: #17365d; BORDER-TOP: medium none; BORDER-RIGHT: #4f81bd 1pt solid; PADDING-TOP: 0cm" valign="top" width="151"&gt; &lt;p style="TEXT-ALIGN: center" class="ecxMsoNormal" align="center"&gt;&lt;b&gt;&lt;span&gt;&lt;span class="Apple-style-span"  style="color:#FFFFFF;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Windows Server 2008, Enterprise  Administrator&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p style="BACKGROUND: white" class="ecxMsoNormal"&gt;&lt;span style="font-family:'Verdana','sans-serif';color:#333333;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang="ES-VE"  style="color:#ffc000;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;Observaciones:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;b&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#ffc000;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 39.3pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Incluye:&lt;/span&gt;&lt;/p&gt; &lt;ul type="square"&gt; &lt;ul type="circle"&gt; &lt;ul type="square"&gt; &lt;li style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"&gt;CD Manual  del curso &lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/li&gt; &lt;li style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"&gt;Material de  trabajo diario &lt;/span&gt;&lt;/li&gt; &lt;li style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"&gt;Certificado  de aprobación&lt;/span&gt; por Noixno&lt;/li&gt; &lt;li style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"&gt;Certificado  &lt;/span&gt;de asistencia por Microsoft&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;p style="TEXT-ALIGN: justify" class="ecxMsoNormal"&gt; &lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 39.3pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="LINE-HEIGHT: 115%;   font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"&gt;Cupo  máximo:&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 108pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"&gt;12  participantes por curso.&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 39.3pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="LINE-HEIGHT: 115%;   font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style="LINE-HEIGHT: 115%;  font-size:12pt;color:#0f243e;"&gt;Duración:&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;  font-size:12pt;color:#0f243e;"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 108pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"&gt;356  (Aprox. 14 meses)&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 39.3pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="LINE-HEIGHT: 115%;   font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"&gt;Opciones de Horarios:&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; LINE-HEIGHT: 115%; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 10pt; MARGIN-LEFT: 108pt; MARGIN-RIGHT: 0cm" class="ecxMsoNormal"&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Sábados de 2:00 pm a  5:30 pm ( Inicio 28 de noviembre)&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 39.3pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Inversión:&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 108pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Modulo I (132 Horas)&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 144pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Symbol;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Inscripción: 800 Bs. + IVA.&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 144pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Symbol;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;4  cuotas mensuales: 800 Bs. + IVA.&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 108pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Modulo II (84 Horas)&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 144pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Symbol;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;4  cuotas mensuales: 900 Bs. + IVA.&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 108pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;Modulo III (140 Horas)&lt;/span&gt;&lt;/p&gt; &lt;p style="TEXT-ALIGN: justify; TEXT-INDENT: -18pt; MARGIN-LEFT: 144pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Symbol;font-size:12pt;color:#0f243e;"&gt;&lt;span&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:#0f243e;"&gt;5  cuotas mensuales: 900 Bs. + IVA.&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt;Formas de pago:&lt;/span&gt;&lt;span lang="ES-VE"  style="font-size:9pt;"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 108pt; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"   style=" ;font-family:Wingdings;font-size:9pt;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt; Efectivo.&lt;/span&gt;&lt;span lang="ES-VE"  style="font-size:9pt;"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 108pt; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"   style=" ;font-family:Wingdings;font-size:9pt;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt; Cheque a nombre de Noixno Group C.A.&lt;/span&gt;&lt;span lang="ES-VE"  style="font-size:9pt;"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -7.05pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 1cm; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"    style="  ;font-family:Wingdings;font-size:12pt;color:#4f6228;"&gt;&lt;span&gt;v&lt;span style="FONT: 7pt 'Times New Roman'"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt;Requisitos: &lt;/span&gt;&lt;span lang="ES-VE"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 106.35pt; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"  style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt; Entrevista Previa a Inscripción y Previa Cita.&lt;/span&gt;&lt;span lang="ES-VE"  style="font-size:12pt;"&gt;  &lt;/span&gt;&lt;span lang="ES-VE"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 106.35pt; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"  style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"  style="font-size:12pt;"&gt; Una Fotografía  Tipo Carnet.&lt;/span&gt;&lt;span lang="ES-VE"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="LINE-HEIGHT: normal; TEXT-INDENT: -18pt; MARGIN-BOTTOM: 0pt; MARGIN-LEFT: 106.35pt; MARGIN-RIGHT: 0cm" class="ecxMsoListParagraph"&gt;&lt;span lang="ES-VE"  style="font-family:Wingdings;"&gt;&lt;span&gt;§&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"   style=" ;font-size:12pt;color:black;"&gt; Una  Fotocopia de Cédula de Identidad.&lt;/span&gt;&lt;span lang="ES-VE"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span lang="ES-VE"   style=" ;font-size:9pt;color:#1f497d;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"   style="font-size:100%;color:#1F497D;"&gt;&lt;span class="Apple-style-span"  style="font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Interesados contactar con:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"   style="font-size:100%;color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:12px;"&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Msn        &lt;/span&gt;&lt;/span&gt;&lt;span lang="ES-VE"&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;a href="mailto:Ltal888@hotmail.com"&gt;Ltal888@hotmail.com&lt;/a&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Tlfs.        &lt;/span&gt;&lt;skype:span id="softomate_v3_highlight_0" class="skype_v3_tb_injection" title="Call this phone number in Venezuela with Skype: +582416151271" skypeid="0" skypeaction="call" nof="" isfax="" freecall="" fwidth="" type=".flex" mode=".modern" path="file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/" durex2="%DADDYHEIGHT%" durex="%DADDYWIDTH%" context="+58 241 615.12.71"&gt;&lt;skype:span id="skype_v3_tb_nop0" class="skype_v3_tb_nop"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/skype:span&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_text0" class="skype_v3_tb_injectionIn"&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_innerText0" class="skype_v3_tb_innerText"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;+58 241 615.12.71 ,&lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_r.modern.gif)" id="skype_v3_tb_img_r0" class="skype_v3_tb_imgR"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;  &lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;skype:span id="softomate_v3_highlight_1" class="skype_v3_tb_injection" title="Call this phone number in Venezuela with Skype: +582418264199" skypeid="1" skypeaction="call" nof="" isfax="" freecall="" fwidth="" type=".flex" mode=".modern" path="file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/" durex2="%DADDYHEIGHT%" durex="%DADDYWIDTH%" context="+58 241 826.41.99"&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_text1" class="skype_v3_tb_injectionIn"&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_innerText1" class="skype_v3_tb_innerText"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;+58 241 826.41.99 ,&lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_r.modern.gif)" id="skype_v3_tb_img_r1" class="skype_v3_tb_imgR"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;+58 424 413.92.62,  &lt;/span&gt;&lt;skype:span id="softomate_v3_highlight_2" class="skype_v3_tb_injection" title="Call this phone number in Venezuela with Skype: +584166447343" skypeid="2" skypeaction="call" nof="" isfax="" freecall="" fwidth="" type=".flex" mode=".modern" path="file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/" durex2="%DADDYHEIGHT%" durex="%DADDYWIDTH%" context="+58 416 644.73.43"&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_text2" class="skype_v3_tb_injectionIn"&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_m.modern.gif)" id="skype_v3_tb_innerText2" class="skype_v3_tb_innerText"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;+58 416 644.73.43 &lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;skype:span style="BACKGROUND-IMAGE: url(file://C:/Users/ALEJAN~1/AppData/Local/Temp/Low/__SkypeIEToolbar_Cache/18ec7742fdda2ad4cdfd1daa2d0aad46/static/inactive_r.modern.gif)" id="skype_v3_tb_img_r2" class="skype_v3_tb_imgR"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;      &lt;/span&gt;&lt;skype:span class="skype_v3_tb_nop"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;/skype:span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="color:#1f497d;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"   style="font-size:100%;color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"   style="font-size:100%;color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Nota: no recibo ningún tipo de comisiones por esta publicación, simplemente les transmito información importante para ustedes!&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: center;margin-left: 3.3pt; " class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;i&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Y como siempre, gracias por leer!&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 3.3pt" class="ecxMsoNormal"&gt;&lt;span class="Apple-style-span"   style="font-size:100%;color:#000000;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3890082966733348652?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3890082966733348652/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/10/nueva-carrera-mcitp-entreprise.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3890082966733348652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3890082966733348652'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/10/nueva-carrera-mcitp-entreprise.html' title='Nueva Carrera- MCITP: Entreprise Administrator‏'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1974449452280090261</id><published>2009-10-25T19:34:00.003-04:30</published><updated>2009-10-25T19:41:08.198-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Evento: Perspectivas en Fuentes Mixtas</title><content type='html'>&lt;div align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h_H4m_HIj1c/SuTpAJD23SI/AAAAAAAAAE0/KvJZeauc7f8/s1600-h/temporal.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 104px;" src="http://1.bp.blogspot.com/_h_H4m_HIj1c/SuTpAJD23SI/AAAAAAAAAE0/KvJZeauc7f8/s200/temporal.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5396694442138066210" /&gt;&lt;/a&gt;&lt;br /&gt;Tengo el placer de invitarlos a participar en este gran evento donde tendrá la oportunidad de analizar los cambios estratégicos en tecnología y prácticas empresariales de manera de expandir sus oportunidades a través de la interoperabilidad, contribuyendo de forma efectiva la nueva generación de software interoperable en un mundo cada vez más abierto y heterogéneo. &lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p align="justify"&gt;Esa mañana compartirá y apreciará mediante escenarios reales, como la interoperabilidad permite obtener los mejores resultados. A continuación detallamos el contenido del evento.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;AGENDA&lt;br /&gt;&lt;br /&gt;08:00 am – 08:30 am  : Registro&lt;br /&gt;&lt;br /&gt;08:30 am - 09:15 am : Un Mundo Interoperable&lt;br /&gt;&lt;br /&gt;09:15 am - 10:00 am : Capacidades de manejo de Bases de Datos &lt;br /&gt;&lt;br /&gt;10:00 am - 10:20 am : Receso&lt;br /&gt;&lt;br /&gt;10:20 am – 11:05 am : Virtualización y administración en ambientes Heterogéneos&lt;br /&gt;&lt;br /&gt;11:05 am - 12:00 am : Desarrollo de Aplicaciones en ambientes Interoperables&lt;br /&gt;&lt;br /&gt;12:00 am - 01:00 pm : Conversemos de Interoperabilidad y fuentes mixtas&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;VALENCIA&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Lunes 26 de Octubre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Centro Profesional Prebo. Salón Sinfonía.&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Av. Andrés Eloy Blanco con calle 137 - A. Centro Profesional Prebo, Planta Alta. Locales 1 y 2.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;MARACAIBO&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Martes 27 de Octubre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Hotel Kristoff&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Av. 8 con calle 68, Nº. 68-48, Sector Santa Rita Maracaibo. Edo. Zulia.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;BARQUISIMETO&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Miércoles 28 de Octubre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Hotel Trinitarias Suites.&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Av. Los Leones c/c Av Libertador, frente al Monumento Al Sol Naciente. Barquisimeto. Edo. Lara.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;MATURIN&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Martes 03 de Noviembre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Salón Versace.&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Av. Luis del Valle Garcia Nº 15. 1er. Piso. Maturín. Edo. Monagas.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;PORLAMAR&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Miércoles 04 de Noviembre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Universidad Corporativa SIGO.&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Av. Juan Bautista Arismendi. Sector Conejeros, Porlamar – Edo. Nueva Esparta&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;br /&gt;&lt;strong&gt;MERIDA&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Fecha: &lt;br /&gt;Viernes 13 de Noviembre 2009&lt;br /&gt;&lt;br /&gt;Lugar: &lt;br /&gt;Hotel Mistafi.&lt;br /&gt;&lt;br /&gt;Dirección: &lt;br /&gt;Avenida 3, con calle 15, Sector Milla, abajo de la Plaza de Milla. Mérida – Edo. Mérida&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;ENTRADA LIBRE!!!&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;Y como siempre, gracias por leer!!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1974449452280090261?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1974449452280090261/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/10/evento-perspectivas-en-fuentes-mixtas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1974449452280090261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1974449452280090261'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/10/evento-perspectivas-en-fuentes-mixtas.html' title='Evento: Perspectivas en Fuentes Mixtas'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h_H4m_HIj1c/SuTpAJD23SI/AAAAAAAAAE0/KvJZeauc7f8/s72-c/temporal.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-6350073484199684606</id><published>2009-10-20T20:02:00.011-04:30</published><updated>2009-10-20T20:55:51.187-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><title type='text'>¿Qué es el .Net Framework?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://upload.wikimedia.org/wikipedia/commons/thumb/d/df/Diagrama_Interno_CLR.jpg/784px-Diagrama_Interno_CLR.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 220px; " src="http://upload.wikimedia.org/wikipedia/commons/thumb/d/df/Diagrama_Interno_CLR.jpg/784px-Diagrama_Interno_CLR.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt; .Net Framework es la solución de Microsoft como plataforma de programación segura, la cual ofrece varias ventajas como: &lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li style="text-align: justify;"&gt;Librerías de clase: provee las clases básicas para el manejo de tareas comunes (Interfaz de usuario, acceso a datos, colectividad, networking, criptografía, aplicaciones web, entre otros.&lt;/li&gt;&lt;li&gt;Máquina Virtual: maneja la ejecución de los programas que se ejecutan.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Administración de memoria y Garbage Collector (GC), la asignación y desasignación ahora es tarea del framework y el GC, ya que éste último se encarga de liberar la memoria que estaba siendo asignada a un objeto que ya no esté en uso.&lt;/li&gt;&lt;li&gt;Manejo de excepciones.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Ahora en la versión 3.0 están incluidas otras características como Windows Presentation Fundation, Windows Workflow Fundation,  Windows Comunication Fundation y Windows Cardspace, de los cuales hablaremos en otras entradas.&lt;/li&gt;&lt;li&gt;LINQ (en la versión 3.5): añade la capacidad de hacer consultas de dato nativas (tipo sql).&lt;/li&gt;&lt;li&gt;ASP.NET Ajax.&lt;/li&gt;&lt;li&gt;Seguridad&lt;/li&gt;&lt;li&gt;Portabilidad&lt;/li&gt;&lt;li&gt;Multiplataforma: gracias al proyecto Mono de Novel.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;¿Cuáles son las etapas de la ejecución de una aplicación en .net?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Luego de que se termina de "echar código" como dicen muchos, se procede a compilar la aplicación, estas son etapas normales, donde antes el compilador tenia como salida código de máquina, ahora el compilador traduce todo nuestro código a MSIL, Microsoft Intermediate Language (Lenguaje intemedio de Microsoft) lo que quiere decir que nuestro programa no se "casa" con la plataforma actual (ejm: x86, x64, mobile, etc). Esto pasa con todos los lenguajes, sean C#, Visual Basic.Net, C++.Net, IronPython, etc. Gracias a esta "traducción" a MSIL es que pueden haber muchísimos lenguajes para .Net y que a la final todos tienen el mismo rendimiento.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt; Luego de que el programa esta precompilado y es ejecutado, ya sea por el usuario o por el IDE, el CLR (Common Lenguage Runtime) es el encargado de ejecutar las instrucciones de dicho programa y transformarlas en código nativo de la plataforma actual para que el procesador pueda entenderlas. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Críticas&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Algunas personas han calificado al estos entornos Admistrados (.Net, Java) como de bajo rendimientos y acusados de utilizar demasiados recursos, pero por otro lado, cuando le ves el lado bueno, todas las opciones que te dan y las facilidades son tantas que esos pequeños problemas, en caso de que se presenten, pueden ser solucionados mediante Hardware. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Porque además, si necesitas hacer una aplicación Administrativa para la empresa Contoso (jajaja) y ellos necesitan que la termines en 1 mes por ejemplo, ¿Crees posible ese desarrollo en C++?, ¿No crees que al tardarte más aumentas los costos? por lo cual, utilizando .Net (o Java, etc) aumentas la productividad del desarrollo por lo que bajas costos y esto tiene como resultado: Cliente Feliz :)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Además si necesitas desarrollar una aplicación que requiera en verdad alto rendimiento, lo mejor es, obviamente C++, pero normalmente los proyectos son simples (en terminos de procesador) y salen muy bien en .Net.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Bueno espero haber respondido las dudas, de todas maneras pueden comentar en caso de necesitar más información o tener dudas.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Creditos de la imagen: Wikipedia.&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;y como siempre, gracias por leer!!&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-6350073484199684606?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/6350073484199684606/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/10/que-es-el-net-framework.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6350073484199684606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/6350073484199684606'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/10/que-es-el-net-framework.html' title='¿Qué es el .Net Framework?'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2374916681393354754</id><published>2009-10-10T21:18:00.001-04:30</published><updated>2009-10-16T14:48:40.383-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Curso MS Windows Mobile 6 - Basics</title><content type='html'>&lt;div align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://t1.gstatic.com/images?q=tbn:SYGxnoSIN6hKPM:http://www.pcprofessional.com/products/images/unifiedcommunication/Windows_Mobile.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 112px; height: 117px;" src="http://t1.gstatic.com/images?q=tbn:SYGxnoSIN6hKPM:http://www.pcprofessional.com/products/images/unifiedcommunication/Windows_Mobile.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;b&gt;Entrenamiento Técnico –Desarrollo sobre Windows Mobile 6.1 – Aspectos Básicos&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;b&gt; &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;b&gt;Octubre 26 y 27 2009. 08:00 AM a 05:00 PM.&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Microsoft y su socio de negocios FYC Group, desean extenderte esta invitación para que asistas al entrenamiento técnico Desarrollo sobre Windows Mobile 6.1 – Aspectos Básicos, el cual tendrá una duración de dos (2) días y que iniciará el día 26 de octubre del presente año.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Dirección:&lt;/div&gt;&lt;div&gt;FYC Group&lt;/div&gt;&lt;div&gt;Avenida Principal de Los Ruices. Centro Monaca. Torre Norte. Piso 2, Ofc. 2-C&lt;/div&gt;&lt;div&gt;Los Ruices. Caracas.&lt;/div&gt;&lt;div&gt;Teléfonos: 0212 232.78.11&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="color:#CC6600;"&gt;&lt;b&gt;Registro &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Para proceder a su confirmación, por favor, siga las siguientes instrucciones:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Enviar un correo a educacionve@fyccorp.com, indicando los siguientes datos personales:&lt;/li&gt;&lt;li&gt;Apellido y Nombre&lt;/li&gt;&lt;li&gt;Cédula de Identidad&lt;/li&gt;&lt;li&gt;Correo electrónico&lt;/li&gt;&lt;li&gt;Teléfono de contacto&lt;/li&gt;&lt;li&gt;Cargo / Rol en su organización&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;La fecha límite para confirmar su participación es el 20 de octubre del 2009.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt; Debe esperar un correo de confirmación para luego formalizar su inscripción&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;Para registrarse o para mayor información, escriba a: norhemma.acevedo@fyccorp.com&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style=" ;font-size:medium;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Nota: No tengo nada que ver con Microsoft ni con FYC Group.&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Solamente les hago llegar la información que encuentro bastante útil.&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;i&gt;Y como siempre! Gracias por Leer!&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2374916681393354754?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2374916681393354754/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/10/curso-ms-windows-mobile-6-basics.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2374916681393354754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2374916681393354754'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/10/curso-ms-windows-mobile-6-basics.html' title='Curso MS Windows Mobile 6 - Basics'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-2027388374483696559</id><published>2009-09-30T19:33:00.000-04:30</published><updated>2009-09-30T19:43:36.755-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eventos'/><title type='text'>Perspectivas en Fuentes Mixtas</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 11px; color: rgb(51, 51, 51); "&gt;Tenemos el placer de invitarlo a participar en este gran evento donde tendrá la oportunidad de analizar los cambios estratégicos en tecnología y prácticas empresariales de manera de expandir sus oportunidades a través de la interoperabilidad, contribuyendo de forma efectiva la nueva generación de software interoperable en un mundo cada vez más abierto y heterogéneo. &lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 11px; color: rgb(51, 51, 51); "&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Para ello contaremos con la participación de expertos internacionales entre los cuales destacan: Tom Hanrahan, Director de los Laboratorios Open Source de Microsoft y Cesar Brod, Fundador y miembro de Solís, Cooperativa de Desarrollo de Software Libre, con trabajos en la Iniciativa Mundial de Linux.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Durante este día compartirá y apreciará mediante escenarios reales como la interoperabilidad permite obtener los mejores resultados.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Para más información clic en el siguiente link: &lt;a href="http://msevents.microsoft.com/cui/EventDetail.aspx?culture=es-VE&amp;amp;EventID=1032427845"&gt;http://msevents.microsoft.com/cui/EventDetail.aspx?culture=es-VE&amp;amp;EventID=1032427845 &lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;Espero puedan asistir, Gracias por leer!! &lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-2027388374483696559?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/2027388374483696559/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/09/perspectivas-en-fuentes-mixtas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2027388374483696559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/2027388374483696559'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/09/perspectivas-en-fuentes-mixtas.html' title='Perspectivas en Fuentes Mixtas'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-3180054288949678755</id><published>2009-09-29T22:12:00.000-04:30</published><updated>2009-09-29T22:23:13.106-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cursos'/><title type='text'>Curso: Php y MySql - Por Noixno Group</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_h_H4m_HIj1c/SsLICpNRqnI/AAAAAAAAAEc/_p43pY_BlBI/s1600-h/banner_new1.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 51px;" src="http://4.bp.blogspot.com/_h_H4m_HIj1c/SsLICpNRqnI/AAAAAAAAAEc/_p43pY_BlBI/s200/banner_new1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5387088052035365490" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align="justify"&gt;NOIXNO LEARNING, tiene el agrado en presentarles el programa de adiestramiento en  Software libre de programación y manejo de bases de datos PHP y MySQL, conjuntamente con la inversión económica y los requisitos de inscripción al mismo, esperando sea de su satisfacción, para cualquier duda estamos a la orden.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Detalles:&lt;br /&gt;&lt;br /&gt;          PHP es una lengua scripting de uso general ampliamente utilizada que se satisface especialmente para el desarrollo del Web y se puede encajar en el HTML. Lo mejor de usar PHP es que es extremadamente simple para el principiante, pero a su vez, ofrece muchas características avanzadas para los programadores profesionales. Aunque el desarrollo de PHP está concentrado en la programación de scripts en el lado del servidor, se puede utilizar para muchas otras cosas.&lt;br /&gt;&lt;br /&gt;La base de datos de MySQL, se ha convertido en la base de datos abierta más popular de la fuente del mundo debido a su funcionamiento rápido constante, alta confiabilidad y facilidad de empleo. Ha utilizado en más de 10 millones de instalaciones que se extendían de corporaciones grandes a los usos encajados especializados en cada continente en el mundo.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;p&gt;Observaciones:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;v  Incluye:&lt;br /&gt;   CD Manual del curso &lt;br /&gt;   Material de trabajo diario &lt;br /&gt;   Certificado de asistencia &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;v  Cupo máximo:&lt;br /&gt;&lt;br /&gt;   §  10 participantes por curso.&lt;br /&gt;&lt;br /&gt;v  Duración:&lt;br /&gt;&lt;br /&gt;   §  48 horas (Aprox. 1 ½ mes)&lt;br /&gt;&lt;br /&gt;v  Opciones de Horarios:&lt;br /&gt;&lt;br /&gt;   §  Martes y Jueves de 1:30 pm a 5:00 pm&lt;br /&gt;&lt;br /&gt;v  Inversión:&lt;br /&gt;&lt;br /&gt;   §  Inversión única: 800 BsF. + IVA.&lt;br /&gt;&lt;br /&gt;   §  50% al momento de reservar el cupo y el otro 50% posterior al inicio del mismo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;v  Formas de pago:&lt;br /&gt;&lt;br /&gt;   §   Efectivo.&lt;br /&gt;&lt;br /&gt;   §   Cheque a nombre de Noixno Group C.A.&lt;br /&gt;&lt;br /&gt;v Requisitos:&lt;br /&gt;&lt;br /&gt;   §   Entrevista Previa a Inscripción.  &lt;br /&gt;&lt;br /&gt;   §   Una Fotocopia de Cédula de Identidad.&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;Interezados contactar con:&lt;/div&gt;&lt;div align="center"&gt;Ing. Lilibeth Alvarez&lt;/div&gt;&lt;div align="center"&gt; +58 241 615.12.71,  +58 241 826.41.99&lt;br /&gt;             +58 424 413.92.62,  +58 416 644.73.43&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;strong&gt;Nota: no estoy cobrando ningún tipo de comisión ni nada por el estilo por la publicidad de este curso, simplemente es por el interés de los lectores. Un saludo!&lt;/strong&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;em&gt;Gracias por leer!!&lt;/em&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-3180054288949678755?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/3180054288949678755/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/09/curso-php-y-mysql-por-noixno-group.html#comment-form' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3180054288949678755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/3180054288949678755'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/09/curso-php-y-mysql-por-noixno-group.html' title='Curso: Php y MySql - Por Noixno Group'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_h_H4m_HIj1c/SsLICpNRqnI/AAAAAAAAAEc/_p43pY_BlBI/s72-c/banner_new1.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-1190468801944799628</id><published>2009-09-03T19:39:00.001-04:30</published><updated>2009-09-03T19:40:55.058-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Seguridad'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Confirmada Vulnerabilidad Zero-Day en IIS 5.0, 5.1 y 6.0</title><content type='html'>&lt;p align="justify"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="cap3" border="0" alt="cap3" align="left" src="http://news.softpedia.com/images/newsrsz/Microsoft-Confirms-IIS-5-0-5-1-and-6-0-0-Day-Vulnerability-2.jpg" width="93" height="92" /&gt;&amp;#160; Microsoft ha ofrecido una confirmación oficial de una nueva vulnerabilidad tipo Zero-day que afectan a diferentes versiones de Servicios de Internet Information Server (IIS). El fallo de seguridad reside en el servicio FTP, explicó Alan Wallace, gerente de comunicaciones de alto nivel para la seguridad del equipo de comunicaciones de respuesta de Microsoft.&lt;/p&gt;  &lt;p align="justify"&gt;   &lt;br /&gt;Según la compañía, los usuarios que ejecutan el File Transfer Protocol (FTP) en Microsoft Internet Information Services (IIS) 5.0, 5.1 y 6.0 están en riesgo de posibles ataques. Por supuesto que Windows 2000, Windows XP y Windows Server 2003 también son afectados.&lt;/p&gt;  &lt;p align="justify"&gt;   &lt;br /&gt;&lt;em&gt;“Microsoft está trabajando actualmente para desarrollar una actualización de seguridad a este problema para hacer frente a esta vulnerabilidad, y la dará a conocer una vez que se haya llegado a un nivel adecuado de calidad para una amplia distribución. Mientras tanto, &lt;/em&gt;&lt;a href="http://www.microsoft.com/technet/security/advisory/975191.mspx"&gt;&lt;em&gt;Security Advisory 975191&lt;/em&gt;&lt;/a&gt;&lt;em&gt; contiene una guía que los clientes pueden implementar para ayudar a protegerse a sí mismos. Por favor vea el asesoramiento para obtener una lista de todos los productos afectados. Microsoft recomienda a los clientes que examinen y apliquen las soluciones guía en el &lt;/em&gt;&lt;a href="http://blogs.technet.com/msrc/archive/2009/09/01/microsoft-security-advisory-975191-released.aspx"&gt;&lt;em&gt;Security Advisory&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&amp;quot;&lt;/em&gt;, aconsejó Wallace .&lt;/p&gt;  &lt;p align="justify"&gt;Esperamos a que salga pronto, pero mientras tanto no se descuiden.&lt;/p&gt;  &lt;p align="center"&gt;&lt;em&gt;Gracias por leer!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-1190468801944799628?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/1190468801944799628/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/09/confirmada-vulnerabilidad-zero-day-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1190468801944799628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/1190468801944799628'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/09/confirmada-vulnerabilidad-zero-day-en.html' title='Confirmada Vulnerabilidad Zero-Day en IIS 5.0, 5.1 y 6.0'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-730558358512518477</id><published>2009-09-03T18:18:00.001-04:30</published><updated>2009-09-03T18:22:17.567-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Networking'/><title type='text'>Tcp/IP Sockets C#</title><content type='html'>&lt;p align="justify"&gt;Una red de computadoras (ordenadores) consiste en máquinas interconectadas mediante canales de comunicación.&amp;#160; Estas máquinas son Hosts y Routers. Los Hosts son computadoras que ejecutan aplicaciones, por ejemplo un navegador. Los Routers son equipos cuyo trabajo es retransmitir información de un canal de comunicación a otro. Estos pueden ejecutar programas, pero normalmente no son aplicativos. Para este post un canal de comunicación es un medio de transmisión de secuencias de bytes de un host a otro, este puede ser broadcast, como Ethernet, un modem dial-up, o algo más sofisticado.&lt;/p&gt;  &lt;p align="justify"&gt;Otro término que tenemos que definir es Protocolo. Un protocolo es un acuerdo acerca de los paquetes intercambiados por comunicación de los programas y lo que significan, además describe como está estructurado, por ejemplo: donde está la información del destinatario en el paquete y de que tamaño es. Un ejemplo es Http (Hypertext Transfer Protocol) que resuelve el problema de transferir objectos hipertexto entre servidores y hacerlo entendible por personas.&lt;/p&gt;  &lt;p align="justify"&gt;Ahora vamos directo al grano: ¿Qué es un Socket?&lt;/p&gt;  &lt;p align="justify"&gt;Un socket es una abstracción que permite a la aplicación “enchufarse” a la red para poder recibir y enviar data. Los principales tipos de socket hoy en día son los Stream Socket y los Datagram Socket. Los Stream Sockets utilizan TCP e IP para proveer n servicio confiable. Los Datagram Sockets usan UDP.&lt;/p&gt;  &lt;p align="justify"&gt; Otro concepto importante son el Stream Reader y el Stream Writer.&lt;/p&gt;  &lt;p align="justify"&gt;Son clases que nos ayudan a escribir y leer del buffer del socket. Sino existieran habría que leer el buffer y escribir en él directamente, cosa que es un poco engorrosa e innecesaria para la mayoría de las aplicaciones.&lt;/p&gt;  &lt;p&gt;Código de ejemplo:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;pre&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;public&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;NetworkServer&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;static&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Main()&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;       //creamos un thread para que el server&lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;  //se ejecute en paralelo con el cliente&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;  //esto es solo por motivos prácticos del demo&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;(&lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;ThreadStart&lt;/span&gt;(&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;delegate&lt;/span&gt; {&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;NetworkServer&lt;/span&gt;().Start(); }&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;)).Start();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&amp;#160;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;   //Iniciamos el Cliente&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Client&lt;/span&gt;().Connect();&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Listo&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="color: #2b91af"&gt;   Console&lt;/span&gt;.Read();&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;void&lt;/span&gt; Start()&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;   // Creamos un TcpListener y le indicamos que&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;   //puerto va a poner en escucha.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TcpListener&lt;/span&gt; tcpListener = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;TcpListener&lt;/span&gt;(9898);&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;        &lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;        //Iniciamos la esucha&lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;   tcpListener.Start();&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;   //Este método queda bloqueado hasta que&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;        //se conecte un cliente&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Socket&lt;/span&gt; socketForClient = tcpListener.AcceptSocket();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&amp;#160;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;if&lt;/span&gt; (socketForClient.Connected)&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;       // Si se conecta&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Cliente conectado.&amp;quot;&lt;/span&gt;);&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;            //Creamos el networkSream, el Reader y el writer&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: #2b91af; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;            NetworkStream&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; networkStream =&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; text-indent: 35.4pt; margin: 0cm 0cm 0pt 106.2pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;                   new&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: #2b91af; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; NetworkStream&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;(socketForClient);&lt;/span&gt;&lt;p style="line-height: normal; text-indent: 35.4pt; margin: 0cm 0cm 0pt 106.2pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;    &lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;StreamWriter&lt;/span&gt; streamWriter =&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;                   &lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;new&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: #2b91af"&gt;StreamWriter&lt;/span&gt;(networkStream); &lt;/span&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&amp;#160;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;StreamReader&lt;/span&gt; streamReader =&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; text-indent: 35.4pt; margin: 0cm 0cm 0pt 106.2pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;                   new&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: #2b91af"&gt;StreamReader&lt;/span&gt;(networkStream);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt; &lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;            //Esta es la data a enviar.&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;            string&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt; theString = &lt;span style="color: #a31515"&gt;&amp;quot;Esta es la data de envio&amp;quot;&lt;/span&gt;;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;  &lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;try&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;                //Escribimos la data en el stream&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamWriter.WriteLine(theString);&lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;           //Ahora le decimos que la mande.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamWriter.Flush();&lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;           //Esperamos data del cliente&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;           //Y&lt;/span&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt; la escribimos por consola.&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;theString = streamReader.ReadLine();&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(theString);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;finally&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;                //Cerramos las conexiones&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamReader.Close();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamWriter.Close();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;networkStream.Close();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;socketForClient.Close();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&amp;#160;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;public&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Client&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Connect()&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TcpClient&lt;/span&gt; socketForServer;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;string&lt;/span&gt; server = &lt;span style="color: #a31515"&gt;&amp;quot;localhost&amp;quot;&lt;/span&gt;;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;try&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{  &lt;/span&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;       //Creamos un TcpCliente y le pasamos &lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;       //el server y el puerto.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;socketForServer = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;TcpClient&lt;/span&gt;(server, 9898);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;catch&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #a31515"&gt;&amp;quot;No se pudo conectar a {0}:9898&amp;quot;&lt;/span&gt;, server);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;return&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;//aqui es lo mismo que en el server. Usamos StreamWriter y Reader.&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;NetworkStream&lt;/span&gt; networkStream = socketForServer.GetStream();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="color: #2b91af"&gt;        StreamReader&lt;/span&gt; streamReader =&lt;br /&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;new&lt;/span&gt; System.IO.&lt;span style="color: #2b91af"&gt;StreamReader&lt;/span&gt;(networkStream);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="color: #2b91af"&gt;StreamWriter&lt;/span&gt; streamWriter =&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;new&lt;/span&gt; System.IO.&lt;span style="color: #2b91af"&gt;StreamWriter&lt;/span&gt;(networkStream);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;try&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;string&lt;/span&gt; outputString = streamReader.ReadLine();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(outputString);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamWriter.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Mensaje desde el Cliente&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;streamWriter.Flush();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;catch&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Exception reading from Server&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;finally&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;networkStream.Close();&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" align="justify"&gt;&lt;span style="line-height: 115%; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;Esto es un demo muy básico, pero funciona correctamente. Se le pueden añadir funcionalidades como multithreading para poder aceptar a varios clientes al mismo tiempo.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" align="center"&gt;&lt;span style="line-height: 115%; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;em&gt;Y como siempre gracias por leer!&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-730558358512518477?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/730558358512518477/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/09/tcpip-sockets-c.html#comment-form' title='9 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/730558358512518477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/730558358512518477'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/09/tcpip-sockets-c.html' title='Tcp/IP Sockets C#'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-702861015698923495</id><published>2009-08-25T12:27:00.001-04:30</published><updated>2009-08-25T12:27:56.070-04:30</updated><title type='text'>Opera 10 RC y Fecha del lanzamiento final!</title><content type='html'>&lt;p&gt;Ya está disponible para descargar la versión RC (Release Candidate o Candidato de Lanzamiento). Para descargarlo simplemente vayan a la barra derecha del blog y busquen el vinculo al RC. Y según se habla, la fecha final es el 1ro de Septiembre.&lt;/p&gt;  &lt;p&gt;Entre las mejoras tenemos (en inglés):&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Interfaz de Usuario:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;New application icon&lt;/li&gt;    &lt;li&gt;Fixed the new tab button on the sides&lt;/li&gt;    &lt;li&gt;Various small Visual Tabs fixes&lt;/li&gt;    &lt;li&gt;Fixed a BitTorrent crash&lt;/li&gt;    &lt;li&gt;Fix to jumping up/down of the new tab button while on the sides&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-195906 (Opera error page selects URL field when displayed, also when focus is already inside URL field)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-257578 (&amp;quot;...&amp;quot; in site titles in some cases overlap the close button)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-258585 (Can't remove menu button when main menu is disabled): The menu button can be removed as any other toolbar button now (upgraders may have to reset the toolbar first)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-261205 (Strings don't fit in Preferences &amp;gt; Downloads [pl])     &lt;br /&gt;Fixed Bug DSK-261206 (Strings don't fit in Preferences &amp;gt; Programs [pl])&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-261757 (Missing &amp;quot;splitter&amp;quot; in bookmark split view)     &lt;br /&gt;Fixed Bug DSK-261933 (Text cut off in startup dialog (Polish translation))&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-261962 (&amp;quot;Reset Toolbar to Its Default&amp;quot; resets all toolbars, not just the current)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-262181 (Empty [dropdown widget] section added to custom shortcuts by update)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-262283 (Skin.ini section inconsistencies) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Nucleo&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Various crash fixes&lt;/li&gt;    &lt;li&gt;Fixed Bug CORE-19376 (Crash navigating history)&lt;/li&gt;    &lt;li&gt;Fixed Bug CORE-23125 (Adding IFRAME with javascript: src through DOM adds history entry (Yandex)) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Opera Mail&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed a crash&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-245600 (Mail imported into account with no downloading of message bodies loses bodies)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-261035 (Crash when opening image attachments)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-261459 (Go to Unread View when requested, don't reuse a maximized mail view) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Windows&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Crash Fix&lt;/li&gt;    &lt;li&gt;Reverted Fix to Bug DSK-241262 (Error message when opening HTML files if Opera is not already running): This caused DSK-262363&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-259756 (Installer removes icon pinned to the Windows 7 task bar)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-260498 (The list of closed tabs needs clicks to be shown)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-262363 (Other programs using the http protocol to open websites in Opera just open blank page in Windows Vista and Windows 7)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-259743 (Closed tabs and new tab buttons have non-native looks in native skin)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-262120 (Panel selector buttons in Native skin get Standard style when not on the left)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-262272 (Closed tabs and new tab positioned incorrectly when tabbar is placed on left or right side) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Mac&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed Bug DSK-261726 (Closed Tabs button overlaps tabs when set to right or left and new tab button is disabled) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Unix&lt;/strong&gt;&lt;/p&gt; &lt;strong&gt;&lt;/strong&gt;  &lt;ul&gt;   &lt;li&gt;Fixed Bug DSK-259575 (Dead keys don't seem to work on widgets)&lt;/li&gt;    &lt;li&gt;Fixed Bug DSK-250495 (Spell checking not working for some UNIX users)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;em&gt;Como siempre gracias por leer!&lt;/em&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-702861015698923495?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/702861015698923495/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/08/opera-10-rc-y-fecha-del-lanzamiento.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/702861015698923495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/702861015698923495'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/08/opera-10-rc-y-fecha-del-lanzamiento.html' title='Opera 10 RC y Fecha del lanzamiento final!'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-5494313146005746663</id><published>2009-08-11T21:27:00.001-04:30</published><updated>2009-08-13T13:29:50.718-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Threading'/><title type='text'>Controlando Threads en .Net</title><content type='html'>&lt;p align="justify"&gt;En &lt;a href="http://andreujuan.blogspot.com/2009/07/systemthreading-como-y-cuando-c.html"&gt;&lt;u&gt;otro post&lt;/u&gt;&lt;/a&gt; les mostré como crear Threads en .Net de cuatro formas diferentes, ahora veremos como controlarlos, detenerlos, etc.&amp;#160; A continuación uso de algunos métodos importantes de la clase Thread:&lt;/p&gt;  &lt;h3&gt;Thread.Join()&lt;/h3&gt;  &lt;p align="justify"&gt;El método &lt;strong&gt;Join&lt;/strong&gt; le dice al sistema que haga esperar a la aplicación hasta que el thread haya terminado. Un pequeño ejemplo para demostrar el uso:&lt;/p&gt;  &lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;static&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue"&gt;string&lt;/span&gt;[] args)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;ThreadStart&lt;/span&gt; operation = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;ThreadStart&lt;/span&gt;(SomeWork);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt; theThread = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Comienza la ejecución&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;theThread.Start();&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Esperamos que termine&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;theThread.Join();&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Listo&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.Read();&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;static&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; SomeWork()&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;for&lt;/span&gt; (&lt;span style="color: blue"&gt;int&lt;/span&gt; i = 0; i &amp;lt; 10; i++)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Hello World #{0}&amp;quot;&lt;/span&gt;, i);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;//simulamos un proceso&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;.Sleep(500);&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Thread.Priority&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;La clase Thread soporta el cambio de la prioridad de un Hilo de ejecución usando la enumeración ThreadPriority, la cual consiste en los siguientes valores: &lt;br /&gt;  &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;li&gt;Highest: Prioridad más alta. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Above: Un poco más alta que la normal. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Normal: Prioridad por defecto. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Below: Un poco más baja que la normal. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Lowest: Prioridad más baja. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Los threads son agendados basándose en ésta enumeración. En la mayoría de los casos se utiliza el valor por defecto (Normal). Modificar la prioridad de un Thread a Above o a Highest puede traer como consecuencia que se prive algún otro proceso importante del sistema, por lo que hay que hacerlo con precaución. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Thread.Abort()&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Controlar Threads en tu aplicacón también requiere que seas capaz de detenerlos. La forma de hacerlo es usando el método &lt;strong&gt;Thread.Abort()&lt;/strong&gt;, el cual cuando es llamado el systema lanza un ThreadAbortException en el subproceso no en el principal. Y sin importar si la excepción es controlada o no, el Thread se detiene justo despues de que se lanza la Excepción. Ejemplo:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;static&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue"&gt;string&lt;/span&gt;[] args)&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt; newThread = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;(&lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;ThreadStart&lt;/span&gt;(TestThread));&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;newThread.Start();&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&amp;#160;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: green"&gt;//Simulamos proceso.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;.Sleep(50);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;newThread.Abort();&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Ready: {0} - Completed: {1}&amp;quot;&lt;/span&gt;, &lt;/span&gt;&lt;blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;                  &lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsReady, &lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsCompleted); &lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;    &lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.Read();&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;public&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt; &lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;private&lt;/span&gt; &lt;span style="color: blue"&gt;static&lt;/span&gt; &lt;span style="color: blue"&gt;bool&lt;/span&gt; m_isReady;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;private&lt;/span&gt; &lt;span style="color: blue"&gt;static&lt;/span&gt; &lt;span style="color: blue"&gt;bool&lt;/span&gt; m_isCompleted;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;static&lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;bool&lt;/span&gt; IsCompleted&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;get&lt;/span&gt; { &lt;span style="color: blue"&gt;return&lt;/span&gt; m_isCompleted; }&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;set&lt;/span&gt; { m_isCompleted = &lt;span style="color: blue"&gt;value&lt;/span&gt;; }&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&amp;#160;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;static&lt;/span&gt; &lt;span style="color: blue"&gt;bool&lt;/span&gt; IsReady&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;get&lt;/span&gt; { &lt;span style="color: blue"&gt;return&lt;/span&gt; m_isReady; }&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;set&lt;/span&gt; { m_isReady = &lt;span style="color: blue"&gt;value&lt;/span&gt;; }&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;}&lt;br /&gt;    &lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;static&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; TestThread()&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsReady = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: green; font-size: 10pt; mso-no-proof: yes"&gt;//Simulamos un proceso.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;.Sleep(200);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsCompleted = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Si ejecutamos el código anterior nos podemos dar cuenta de que a la propiedad IsReady se le asigna correctamente el valor, pero en cambio a IsCompleted no. Esto es debido a que el abort se está ejecutando justamente despues del IsReady, por lo que IsCompleted nunca llega a asignársele el valor.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Por lo que nuestro código debería quedar de la siguiente manera:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: blue; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;static&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; TestThread()&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;try&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsReady = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;.Sleep(200);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;TestClass&lt;/span&gt;.IsCompleted = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;catch&lt;/span&gt; (&lt;span style="color: #2b91af"&gt;ThreadAbortException&lt;/span&gt; ex)&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(ex.Message);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-ansi-language: en-us; mso-no-proof: yes" lang="EN-US"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; color: #2b91af; font-size: 10pt; mso-no-proof: yes"&gt;Console&lt;/span&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Tratamos el error&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;finally&lt;/span&gt; &lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515"&gt;&amp;quot;Cerramos conexiones, streams,etc&amp;quot;&lt;/span&gt;);&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p style="line-height: normal; margin-bottom: 0pt; mso-layout-grid-align: none" class="MsoNormal"&gt;&lt;span style="font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: &amp;#39;Courier New&amp;#39;; font-size: 10pt; mso-no-proof: yes"&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;De esta manera manejamos correctamente la el aborto de ejecución del hilo y nuestra data o proceso quedan íntegros. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;em&gt;Continuaré este post pronto, y como siempre gracias por leer!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/709008391091394713-5494313146005746663?l=www.andreujuan.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.andreujuan.com/feeds/5494313146005746663/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.andreujuan.com/2009/08/controlando-threads-en-net.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5494313146005746663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/709008391091394713/posts/default/5494313146005746663'/><link rel='alternate' type='text/html' href='http://www.andreujuan.com/2009/08/controlando-threads-en-net.html' title='Controlando Threads en .Net'/><author><name>Juan Andreu</name><uri>http://www.blogger.com/profile/10409181335574209561</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_h_H4m_HIj1c/SlfPvuV6pLI/AAAAAAAAACs/AsfNfyjzDR4/S220/parke2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-709008391091394713.post-9120131830957303859</id><published>2009-07-29T11:11:00.000-04:30</published><updated>2009-07-29T11:21:40.216-04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='System'/><title type='text'>¿Cómo medir el rendimiento de tus métodos?</title><content type='html'>&lt;p align="justify"&gt;Un tema muy importante es el rendimiento de nuestro código, ¿Cuánto tarda en ejecutarse?, ¿Podría hacerlo más rápido aún? éstas preguntas tenemos que tenerlas en cuenta siempre a la hora de programar, por lo que ahora veremos como medirlo mediante un pequeño ejemplo en donde veremos la diferencia entre concatenar con el "+" y hacerlo con una clase del Framework llamada StringBuilder.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre align="justify"&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;using&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; System;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;using&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; System.Collections.Generic;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;using&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; System.Windows.Forms;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;using&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; System.Threading;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;using&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; System.Text;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;namespace&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; DemoXml&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;&lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:#2B91AF;"&gt;Program&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; The main entry point for the application.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;[&lt;span style="color:#2B91AF;"&gt;STAThread&lt;/span&gt;]&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Main()&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;Test();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green;"&gt;//número de vueltas&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;int&lt;/span&gt; avgLoops = 10;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green;"&gt;//número de concatenaciones&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;int&lt;/span&gt; testAppends = 10000;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Test()&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:green;"&gt;//tres timespan para tener el valor en segundoss&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;TimeSpan&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; concatTotal = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2B91AF;"&gt;TimeSpan&lt;/span&gt;();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;TimeSpan&lt;/span&gt; concatMaloTotal = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2B91AF;"&gt;TimeSpan&lt;/span&gt;();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;TimeSpan&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt; builderTotal = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2B91AF;"&gt;TimeSpan&lt;/span&gt;();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:green;"&gt;//pintamos un encabezado&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"***********************************************************"&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"Vuelta | Con mala praxis |&lt;span style="mso-spacerun:yes"&gt;     &lt;/span&gt;Normal&lt;span style="mso-spacerun:yes"&gt;     &lt;/span&gt;|&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;StringBuilder "&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;Console&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"***********************************************************"&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;for&lt;/span&gt; (&lt;span style="color:blue;"&gt;int&lt;/span&gt; i = 1; i &lt;= avgLoops; i++)&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:green;"&gt;//en los tres casos sacamos el tiempo actual&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:green;"&gt;//lo almacenamos en una variable,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:green;"&gt;//inmediatamente se ejecuta el método&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:green;"&gt;//luego se toma el segundo valor de tiempo&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:green;"&gt;//y por último se restan.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;DateTime&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt; timeStart1 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;AppendMethod();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt; timeEnd1 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;concatTotal += timeEnd1 - timeStart1;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt; timeStart3 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;AppendMethod_Bad();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt; timeEnd3 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;concatMaloTotal += timeEnd3 - timeStart3;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt; timeStart2 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;MethodStringBuilder();&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt; timeEnd2 = &lt;span style="color:#2B91AF;"&gt;DateTime&lt;/span&gt;.Now;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;builderTotal += timeEnd2 - timeStart2;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;//los escribimos en la consola&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"# {0}&lt;span style="mso-spacerun:yes"&gt;   &lt;/span&gt;|&lt;span style="mso-spacerun:yes"&gt;      &lt;/span&gt;{1}&lt;span style="mso-spacerun:yes"&gt;      &lt;/span&gt;|&lt;span style="mso-spacerun:yes"&gt;      &lt;/span&gt;{2}&lt;span style="mso-spacerun:yes"&gt;     &lt;/span&gt;|&lt;span style="mso-spacerun:yes"&gt;      &lt;/span&gt;{3}&lt;span style="mso-spacerun:yes"&gt;      &lt;/span&gt;"&lt;/span&gt;,&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                    &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;i.ToString().PadLeft(2, &lt;span style="color:#A31515;"&gt;' '&lt;/span&gt;),&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                    &lt;/span&gt;(timeEnd3 - timeStart3).TotalSeconds.ToString().PadRight(5, &lt;span style="color:#A31515;"&gt;'0'&lt;/span&gt;),&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                    &lt;/span&gt;(timeEnd1 - timeStart1).TotalSeconds.ToString().PadRight(5, &lt;span style="color:#A31515;"&gt;'0'&lt;/span&gt;),&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                    &lt;/span&gt;(timeEnd2 - timeStart2).TotalSeconds.ToString().PadRight(5, &lt;span style="color:#A31515;"&gt;'0'&lt;/span&gt;));&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:green;"&gt;//por ultimo imprimimos los promedios&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"***********************************************************"&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"Promedios"&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;span style="color:#2B91AF;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"Tiempo concatenando (Con mala praxis): {0} segundos."&lt;/span&gt;,&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;Math&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt;.Round(concatMaloTotal.TotalSeconds / avgLoops, 3).ToString().PadRight(5, &lt;span style="color:#A31515;"&gt;'0'&lt;/span&gt;));&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;Console&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"Tiempo concatenando (Normal):&lt;span style="mso-spacerun:yes"&gt;          &lt;/span&gt;{0} segundos."&lt;/span&gt;,&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="'font-size:"&gt;&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;Math&lt;/span&gt;&lt;span lang="EN-US"  style="';font-size:10.0pt;"&gt;.Round(concatTotal.TotalSeconds / avgLoops, 3).ToString().PadRight(5, &lt;span style="color:#A31515;"&gt;'0'&lt;/span&gt;));&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: normal;mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span lang="EN-US"  style="'font-family:;font-size:10.0pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;Console&lt;/span&gt;&lt;span style="'font-family:;font-size:10.0pt;"&gt;.WriteLine(&lt;span style="color:#A31515;"&gt;"Tiempo con StringBuilder:&lt;span style="mso-spacerun:yes"&gt;              &lt;/span&gt;{0} segundos."&lt;/span&gt;,&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:0cm;margin-bottom:.0001pt;line-height: norm
