<?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-12602009</id><updated>2011-12-28T05:18:53.932-06:00</updated><category term='Visual Studio'/><category term='Microsoft'/><category term='MVC'/><category term='MySQL'/><category term='SQL'/><category term='CRM'/><category term='GoDaddy'/><category term='Asp.Net'/><category term='Windows Live'/><category term='Java'/><category term='Google'/><category term='Triara'/><category term='Open Source'/><category term='PHP'/><category term='WordPress 2.0'/><category term='Browsers'/><category term='OSCommerce'/><category term='General'/><category term='Tip'/><category term='encriptar'/><category term='Soluciones'/><category term='Consejos'/><category term='Live'/><category term='Noticias'/><category term='Software'/><category term='Internet de Mexico'/><category term='Mono'/><category term='Diseño'/><category term='Enlace Veracruzano'/><category term='MS CUI'/><category term='Veracruz'/><category term='eHealth'/><category term='Truco'/><title type='text'>Blog de Llanura.com</title><subtitle type='html'>Blog de la empresa Llanura.com (http://www.llanura.com),   ubicada en Veracruz, Ver.
Empresa enfocada al desarrollo de aplicaciones web empresariales, usando herramientas de codigo fuente abierto.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default?start-index=101&amp;max-results=100'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>158</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-12602009.post-2558664004386203317</id><published>2011-10-20T02:09:00.000-05:00</published><updated>2011-10-20T02:09:21.682-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Procedimiento almacenado para realizar paginacion de una tabla en sql server</title><content type='html'>A continuacion el resultado de un par de horas de estar buscando como realizar paginacion para una tabla desde un procedimiento almacenado en SQL Server 2005, supongo que puede ser usado en la nueva version 2008.&lt;br /&gt;Existen por ahi diversos ejemplos de como realizar esto, yo termine con esta sencilla version para mas adelante implementar un control ajax, que irá tomando los datos de 50 en 50 registros por vez.&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;SET&lt;/span&gt; ANSI_NULLS &lt;span class="kwrd"&gt;ON&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;GO&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;SET&lt;/span&gt; QUOTED_IDENTIFIER &lt;span class="kwrd"&gt;ON&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;GO&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="rem"&gt;-- =============================================&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="rem"&gt;-- Author:        Victor Garcia&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="rem"&gt;-- Create date: 2008/08/14&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="rem"&gt;-- Description:    Procedimiento almacenado para paginacion de una tabla&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="rem"&gt;-- Usage: usp_obtenpagina(0,20) &lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="rem"&gt;-- Note: la primer pagina debe ser 0&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="rem"&gt;-- =============================================&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;CREATE&lt;/span&gt; &lt;span class="kwrd"&gt;PROCEDURE&lt;/span&gt; usp_obtenpagina&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="rem"&gt;-- Add the parameters for the stored procedure here&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    @Pagina  &lt;span class="kwrd"&gt;int&lt;/span&gt; = 0, &lt;/pre&gt;&lt;pre class="alt"&gt;    @Registros  &lt;span class="kwrd"&gt;int&lt;/span&gt; = 10&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;AS&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;BEGIN&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span class="rem"&gt;-- SET NOCOUNT ON added to prevent extra result sets from&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="rem"&gt;-- interfering with SELECT statements.&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;SET&lt;/span&gt; NOCOUNT &lt;span class="kwrd"&gt;ON&lt;/span&gt;;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;DECLARE&lt;/span&gt; @Inicio &lt;span class="kwrd"&gt;int&lt;/span&gt;;&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;SET&lt;/span&gt; @Inicio=@Pagina*@Registros+1;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;SET&lt;/span&gt; @Registros = @Registros * (1+@Pagina);&lt;/pre&gt;&lt;pre&gt;  &lt;span class="rem"&gt;-- Insert statements for procedure here&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;SELECT&lt;/span&gt; *&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;FROM&lt;/span&gt; (&lt;span class="kwrd"&gt;SELECT&lt;/span&gt; ROW_NUMBER() &lt;span class="kwrd"&gt;OVER&lt;/span&gt; (&lt;span class="kwrd"&gt;ORDER&lt;/span&gt; &lt;span class="kwrd"&gt;BY&lt;/span&gt; MiTabla.MiId)&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;AS&lt;/span&gt; Fila, *&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;FROM&lt;/span&gt; MiTabla)&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;AS&lt;/span&gt; Numeracion&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;WHERE&lt;/span&gt; Fila &lt;span class="kwrd"&gt;between&lt;/span&gt; @Inicio &lt;span class="kwrd"&gt;and&lt;/span&gt; @Registros&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;END&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;GO&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2558664004386203317?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2558664004386203317/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2558664004386203317' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2558664004386203317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2558664004386203317'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/procedimiento-almacenado-para-realizar.html' title='Procedimiento almacenado para realizar paginacion de una tabla en sql server'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7828590134057045708</id><published>2011-10-20T02:08:00.002-05:00</published><updated>2011-10-20T02:08:34.705-05:00</updated><title type='text'>Instalar traducciones para modulos en OpenERP</title><content type='html'>Rapidamente para no olvidar como colocar las traducciones oficiales en los modulos extras de OpenERP:&lt;br /&gt;&lt;br /&gt;1.- Buscar en LaunchPad el archivo correspondiente al módulo (&lt;a href="http://bazaar.launchpad.net/~openerp-commiter/openobject-addons/extra-6.0/files"&gt;http://bazaar.launchpad.net/~openerp-commiter/openobject-addons/extra-6.0/files&lt;/a&gt;), en mi caso estoy usando la&amp;nbsp;versión&amp;nbsp;6.0xx; buscar el nombre del modulo que se desea y descargar el archivo es.po correspondiente.&lt;br /&gt;&lt;br /&gt;2.- Colocar el archivo es.po anteriormente obtenido en la carpeta i18n del modulo que estamos tratando de traducir, por ejemplo "Hotel Reservation".&lt;br /&gt;&lt;br /&gt;3.- Desde el cliente de ERP usando el usuario de admin, entramos a la&amp;nbsp;sección&amp;nbsp;de&amp;nbsp;Administración/Traducciones/Cargar una&amp;nbsp;traducción&amp;nbsp;oficial; seleccionamos el idioma Español y esperamos un momento (depende de los&amp;nbsp;módulos&amp;nbsp;que se&amp;nbsp;están&amp;nbsp;usando).&lt;br /&gt;&lt;br /&gt;4.- Para visualizar los cambios, detener-arrancar el servidor de ERP y&amp;nbsp;también&amp;nbsp;cerrar-abrir el cliente.&lt;br /&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7828590134057045708?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7828590134057045708/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7828590134057045708' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7828590134057045708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7828590134057045708'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2011/10/instalar-traducciones-para-modulos-en.html' title='Instalar traducciones para modulos en OpenERP'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-689222920186771867</id><published>2011-08-17T20:27:00.002-05:00</published><updated>2011-08-17T20:33:35.168-05:00</updated><title type='text'>Virtual Router Windows 7</title><content type='html'>Solución al problema de  "virtual router could not be started" de Virtual Router - Wifi Hot Spot for Windows 7 / 2008 R2.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;He intentado muchas formas de resolver este problema, y ninguno de ellos había funcionado. Hasta que encontré esta solución:&lt;br /&gt;&lt;br /&gt;Haga clic en Inicio, escriba "cmd", presione las teclas "Ctrl + Shift + Enter". Esto permite abrir DOS con permisos de administración.&lt;br /&gt;Copiar los dos siguientes comandos en cmd, uno por uno.&lt;br /&gt;&lt;br /&gt;netsh wlan set hostednetwork mode = allow ssid = mired password = miclave&lt;br /&gt;netsh wlan start hostednetwork&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;La pantalla de Virtual Router Manager mostrará los datos que colocamos.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Listo &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-689222920186771867?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/689222920186771867/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=689222920186771867' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/689222920186771867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/689222920186771867'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2011/08/virtual-router-windows-7.html' title='Virtual Router Windows 7'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5184042206917057393</id><published>2011-05-19T17:58:00.003-05:00</published><updated>2011-05-19T18:14:14.323-05:00</updated><title type='text'>Concurrent RDP Patcher</title><content type='html'>Tiene un rato que intento conectarme de forma remota a mi PC desde un IPod Touch que tengo en especial porque muchas veces tengo puesto el Vuze abierto conectado y por supuesto bajando a lo que puede en este caso a 200 mas o menos, lo que me quita velocidad de navegación.&lt;br /&gt;&lt;br /&gt;Dado lo anterior encontré que mi versión de Windows Home Premium no tiene mas que asistencia remota pero no el escritorio remoto. Buscando en Internet me tope con un programa gratuito que parchea un dll de terminal services a una version RTM. Arriesgandome a que pueda existir algun conflicto por las versiones, instale esta aplicacion y afortunadamente el parche funciono de maravilla.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-0ifs_N6J0I4/TdWjuVdzbWI/AAAAAAAACLk/akvvL3ljv6Q/s1600/Clipboard01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 302px; height: 247px;" src="http://4.bp.blogspot.com/-0ifs_N6J0I4/TdWjuVdzbWI/AAAAAAAACLk/akvvL3ljv6Q/s320/Clipboard01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5608568927391280482" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Algo que me gusta de esta aplicacion es que cuenta con un "Unpatch", que espero lo haga correctamente, si en algun momento entra en conflicto el Dll.&lt;br /&gt;&lt;br /&gt;Ahora lo unico que use para conectarme desde el ipod fue IRdesktop, tambien gratuito que se obtiene desde el App Store de Mac.&lt;br /&gt;&lt;br /&gt;Listo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5184042206917057393?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5184042206917057393/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5184042206917057393' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5184042206917057393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5184042206917057393'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2011/05/concurrent-rdp-patcher.html' title='Concurrent RDP Patcher'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-0ifs_N6J0I4/TdWjuVdzbWI/AAAAAAAACLk/akvvL3ljv6Q/s72-c/Clipboard01.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8443916178171412706</id><published>2010-10-31T15:34:00.004-06:00</published><updated>2010-12-07T00:23:54.318-06:00</updated><title type='text'>Apuntes de KnowledgeTree Community Edition en Ubuntu 10.4</title><content type='html'>A continuación algunos apuntes al momento de estar instalando KnowledgeTree-CE:&lt;div&gt;&lt;ol&gt;&lt;li&gt;Uno de los requisitos para la instalación es que mi Ubuntu no tenia el paquete de SWFTools. La mejor manera de instalarlos fue mediante Synaptic y no asi con el Centro de Software de Ubuntu.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;deb http://cz.archive.ubuntu.com/ubuntu karmic main universe&lt;br /&gt;(agregar esta linea en  /etc/apt/sources.list)&lt;/li&gt;&lt;li&gt;apt-get update&lt;/li&gt;&lt;li&gt;apt-get install swftools&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Una vez que se instalo el paquete anterior, de igual manera mediante Synaptic se instala KnowledgeTree-CE, sin problema.&lt;/li&gt;&lt;li&gt;Algo recomendable en este momento es agregar también phpMyAdmin&lt;/li&gt;&lt;li&gt;Lo siguiente es ir al asistente de configuración mediante Firefox, para crear la base de datos. http://localhost/knowledgetree (con minusculas).&lt;/li&gt;&lt;li&gt;Simplemente llene los campos y en todo momento le di "siguiente" a todos los botones. &lt;/li&gt;&lt;li&gt;Al no haber apuntado el usuario admin y su contraseña, tuve que actualizar el registro en la base de datos de dms, mediante phpmyadmin, cambie el registro de "admin" en la tabla de "users", actualizando la contraseña con MD5.&lt;/li&gt;&lt;li&gt;Finalmente regrese a la pantalla de  http://localhost/knowledgetre/login.php, para configurar usuarios, grupos y permisos.&lt;/li&gt;&lt;li&gt;Algo importante  en esta instalación de KT-ce en Ubuntu es que los documentos se guardan en /var/lib/knowledgetree/Documents.&lt;/li&gt;&lt;li&gt;En caso de querer cambiar el url de la aplicación digamos http://localhost/knowledgetree a digamos http://localhost/foobar. Lo primero es modificar el archivo conf dentro de Apache (/etc/apache2/sites-available/), modificando la linea:&lt;br /&gt;Alias /knowledgetree /usr/share/knowledgetree-ce&lt;br /&gt;modificando /knowledgetree por /foobar; a continuación tenemos que entrar al sitio kt como administrador y modificar la configuración general  (Administration  » System Configuration  » General Settings)&lt;br /&gt;&lt;img src="http://www.knowledgetree.org/images/c/c9/Root_URL_Setting.png" alt="alt text" /&gt;&lt;/li&gt;&lt;li&gt;Guardar la nueva configuración y reiniciar apache con gksudo /etc/init.d/apache2 restart&lt;/li&gt;&lt;/ol&gt;Listo!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8443916178171412706?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8443916178171412706/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8443916178171412706' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8443916178171412706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8443916178171412706'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2010/10/apuntes-de-knowledgetree-community.html' title='Apuntes de KnowledgeTree Community Edition en Ubuntu 10.4'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7680254730361878620</id><published>2010-10-06T23:30:00.002-05:00</published><updated>2010-10-06T23:33:14.760-05:00</updated><title type='text'>Cupón de Descuento Dell hasta el sábado 9 de Octubre 2010</title><content type='html'>Cupón de descuento Dell en computadoras participantes:&lt;br /&gt;MM3RSPBMGRD0VX&lt;br /&gt;Enlace:&lt;br /&gt;http://click.mexico.dell.com/r/LDYD6A/6VQSE/JZUXM/40RY97/WHMRM/FW/h&lt;br /&gt;El descuento estara activo hasta el 9 de Octubre solo se puede usar una vez.&lt;br /&gt;Suerte.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7680254730361878620?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7680254730361878620/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7680254730361878620' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7680254730361878620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7680254730361878620'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2010/10/cupon-de-descuento-dell-hasta-el-sabado.html' title='Cupón de Descuento Dell hasta el sábado 9 de Octubre 2010'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3818358199803954767</id><published>2010-03-22T11:29:00.003-06:00</published><updated>2010-03-22T11:39:19.297-06:00</updated><title type='text'>Cupon de descuento DELL hasta el 26 marzo 2010</title><content type='html'>Bueno pues, me ha llegado un cupon de descuento via correo electronico de Dell, claro despues de haber realizado una compra, y despues tambien de andar buscando un cupon que me funcionara para conseguir un equipo mas barato, hoy recibo esto. Total que alguien podra aprovecharlo. Es para usarse solo una vez, el que lo use solo aviseme por este medio para borrar el post.&lt;br /&gt;Aqui el codigo del cupon de descuento el cual vence el 26 de marzo de 2010:&lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XX$8VLFC$?GDTS&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3818358199803954767?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3818358199803954767/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3818358199803954767' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3818358199803954767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3818358199803954767'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2010/03/cupon-de-descuento-dell-hasta-el-26.html' title='Cupon de descuento DELL hasta el 26 marzo 2010'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-9183740381316028725</id><published>2009-07-08T20:41:00.001-05:00</published><updated>2009-07-08T20:41:26.177-05:00</updated><title type='text'>Tip: Solución al Max(id) de MySQL en CakePhp</title><content type='html'>&lt;p&gt;En determinadas ocasiones se requiere el ultimo id que se tiene en una base de datos en MySQL. La forma más práctica de hacer esto es usar la instrucción:&lt;/p&gt;  &lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; height: 52px; background-color: #f4f4f4"&gt;   &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;     &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt; &lt;span style="color: #0000ff"&gt;MAX&lt;/span&gt;(id) &lt;span style="color: #0000ff"&gt;as&lt;/span&gt; MaxId &lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt; Table&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Ahora bien lograr esta instrucción en cakephp tiene su truco, algo que podemos hacer es usar la propiedad “query” de objeto model, pero el resultado es un poco difícil de acceder pues arroja un arreglo de 3 dimensiones. Lo mas sencillo, es usar las prestaciones de Cakephp y el modelo de acceso a la base de datos que maneja, de esta manera existe la propiedad find (‘first’) que permitirá arrojar un solo resultado, con la combinación de unos parámetros para el orden de los datos lograremos encontrar el ultimo id:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="codeSnippetWrapper" style="border-right: silver 1px solid; padding-right: 4px; border-top: silver 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: silver 1px solid; width: 97.5%; cursor: text; direction: ltr; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: silver 1px solid; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; height: 98px; background-color: #f4f4f4; text-align: left"&gt;&lt;br /&gt;  &lt;div id="codeSnippet" style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none"&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; text-align: left; border-bottom-style: none"&gt;&lt;span id="lnum1" style="color: #606060"&gt;   1:&lt;/span&gt; $MaxId = $this-&amp;gt;Model-&amp;gt;find(&lt;span style="color: #006080"&gt;'first'&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;array&lt;/span&gt;(&lt;span style="color: #006080"&gt;'order'&lt;/span&gt;=&amp;gt;&lt;span style="color: #006080"&gt;'Model.id DESC'&lt;/span&gt;));&lt;/pre&gt;&lt;br /&gt;&lt;!--CRLF--&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; direction: ltr; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; text-align: left; border-bottom-style: none"&gt;&lt;span id="lnum2" style="color: #606060"&gt;   2:&lt;/span&gt; $this-&amp;gt;set(&lt;span style="color: #006080"&gt;'maxid'&lt;/span&gt;, $MaxId[&lt;span style="color: #006080"&gt;'Model'&lt;/span&gt;][&lt;span style="color: #006080"&gt;'id'&lt;/span&gt;]);&lt;/pre&gt;&lt;br /&gt;&lt;!--CRLF--&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Lo anterior lo coloque dentro de un controlador.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-9183740381316028725?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/9183740381316028725/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=9183740381316028725' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9183740381316028725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9183740381316028725'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2009/07/tip-solucion-al-maxid-de-mysql-en.html' title='Tip: Solución al Max(id) de MySQL en CakePhp'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3495986796964396436</id><published>2009-06-24T16:14:00.002-05:00</published><updated>2009-06-24T16:20:29.452-05:00</updated><title type='text'>Manejando palabras acentuadas en PHP y Javascript</title><content type='html'>&lt;p&gt;Antes de comenzar con el aspecto de la programación, una regla sobre gramática: las mayúsculas siempre, siempre, siempre se acentúan.&lt;/p&gt;&lt;p&gt;Dicho lo anterior, me tope con el caso en php que tenia una lista de opciones basadas en un select que no me mostraba los acentos correctamente. MySQL y php por omisión usan utf-8, por lo que es buena practica poner nuestro html en utf-8:&lt;/p&gt;&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solidfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &amp;lt;meta http-equiv=&lt;span style="color:#006080;"&gt;"Content-Type"&lt;/span&gt; content=&lt;span style="color:#006080;"&gt;"text/html; charset=utf-8"&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Ahora bien, Javascript no utiliza por omisión utf-8, asi que cuando coloque un texto mediante document.write, la pantalla desplego el texto acentuado como un carácter especial de html (html entity):&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solid; HEIGHT: 234pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;function&lt;/span&gt; changecities( formObj )&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;   2:&lt;/span&gt;  {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   3:&lt;/span&gt;    statesObj = eval( &lt;span style="color:#006080;"&gt;"formObj.states"&lt;/span&gt; );&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;   4:&lt;/span&gt;  &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   5:&lt;/span&gt;    state = statesObj[statesObj.selectedIndex].value;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;   6:&lt;/span&gt;    citiesObj = eval( &lt;span style="color:#006080;"&gt;"formObj.elements['cities']"&lt;/span&gt; );&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   7:&lt;/span&gt;  &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;   8:&lt;/span&gt;    &lt;span style="color:#008000;"&gt;// remove all entries&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   9:&lt;/span&gt;    citiesNum = citiesObj.length;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  10:&lt;/span&gt;    &lt;span style="color:#0000ff;"&gt;for&lt;/span&gt; (i=(citiesNum-1); i &amp;gt;= 0; i--)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  11:&lt;/span&gt;    {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  12:&lt;/span&gt;      citiesObj.options[i] = &lt;span style="color:#0000ff;"&gt;null&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  13:&lt;/span&gt;    }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  14:&lt;/span&gt;    &lt;span style="color:#008000;"&gt;// add entries based on area selected&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  15:&lt;/span&gt;    &lt;span style="color:#0000ff;"&gt;switch&lt;/span&gt; (state){&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  16:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;case&lt;/span&gt; &lt;span style="color:#006080;"&gt;"3"&lt;/span&gt;:&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  17:&lt;/span&gt;    citiesObj.options[0] = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Option(&lt;span style="color:#006080;"&gt;"Comondú"&lt;/span&gt;,17);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  18:&lt;/span&gt;    citiesObj.options[1] = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Option(&lt;span style="color:#006080;"&gt;"La Paz"&lt;/span&gt;,18);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  19:&lt;/span&gt;    citiesObj.options[2] = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Option(&lt;span style="color:#006080;"&gt;"Loreto"&lt;/span&gt;,19);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  20:&lt;/span&gt;    citiesObj.options[3] = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Option(&lt;span style="color:#006080;"&gt;"Los Cabos"&lt;/span&gt;,20);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  21:&lt;/span&gt;    citiesObj.options[4] = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; Option(&lt;span style="color:#006080;"&gt;"Mulegé"&lt;/span&gt;,21);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  22:&lt;/span&gt;    citiesObj.options[0].selected = &lt;span style="color:#0000ff;"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  23:&lt;/span&gt;    &lt;span style="color:#0000ff;"&gt;break&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  24:&lt;/span&gt;  &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;  25:&lt;/span&gt;     }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;span style="color:#606060;"&gt;  26:&lt;/span&gt; }...&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_0wpDOZY7yrU/SkKXEyMrMTI/AAAAAAAAAjY/WI0cJPR8AY0/s1600-h/image%5B5%5D.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="107" alt="image" src="http://lh3.ggpht.com/_0wpDOZY7yrU/SkKXFTqjiLI/AAAAAAAAAjc/e0qNcVQarvI/image_thumb%5B3%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Php tiene una instrucción para transformar esto caracteres, de su valor al carácter que queremos:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solid; HEIGHT: 92pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 80px; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color:#800000;"&gt;php&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;html_entity_decode&lt;/span&gt;(“&amp;amp;#&lt;span style="color:#ff0000;"&gt;250”&lt;/span&gt;); ?&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Debe dar como resultado “ú”&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_0wpDOZY7yrU/SkKXFht9o7I/AAAAAAAAAjg/fngtsGdpbMg/s1600-h/image%5B14%5D.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="125" alt="image" src="http://lh4.ggpht.com/_0wpDOZY7yrU/SkKXF3qS9gI/AAAAAAAAAjk/wZ9Ig7JRFHc/image_thumb%5B6%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Pero como vemos en la imagen, el select no se despliega correctamente pues en realidad la instrucción html_entity_decode da como resultado un conjunto de caracteres “ISO-8859-1”, así que podemos optar por hacer una de dos cosas:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Usar &lt;strong&gt;utf8_encode&lt;/strong&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solid; HEIGHT: 108pxfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color:#800000;"&gt;php&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;utf8_encode&lt;/span&gt;(&lt;span style="color:#ff0000;"&gt;html_entity_decode&lt;/span&gt;(“&amp;amp;#&lt;span style="color:#ff0000;"&gt;250”&lt;/span&gt;)); ?&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Cambiar la opción del conjunto de caracteres en la instrucción html_entity_decode(string,quotestyle,&lt;strong&gt;character-set&lt;/strong&gt;): &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solidfont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:#f4f4f4;"   &gt;&lt;br /&gt;&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-: nonefont-family:consolas, 'Courier New', courier, monospace;font-size:8pt;color:white;"   &gt;&lt;span style="color:#606060;"&gt;   1:&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color:#800000;"&gt;php&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;html_entity_decode&lt;/span&gt;(&lt;span style="color:#0000ff;"&gt;"&amp;amp;250;"&lt;/span&gt;,&lt;span style="color:#ff0000;"&gt;ENT_COMPAT&lt;/span&gt;,&lt;span style="color:#0000ff;"&gt;"UTF-8"&lt;/span&gt;) ?&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;El despliegue es:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_0wpDOZY7yrU/SkKXGJKGKuI/AAAAAAAAAjo/h8CzP_ALM0c/s1600-h/image%5B17%5D.png"&gt;&lt;img title="image" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="122" alt="image" src="http://lh3.ggpht.com/_0wpDOZY7yrU/SkKXGv7KwLI/AAAAAAAAAjs/N4nARkNotP4/image_thumb%5B7%5D.png?imgmax=800" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3495986796964396436?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3495986796964396436/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3495986796964396436' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3495986796964396436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3495986796964396436'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2009/06/manejando-palabras-acentuadas-en-php-y.html' title='Manejando palabras acentuadas en PHP y Javascript'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_0wpDOZY7yrU/SkKXFTqjiLI/AAAAAAAAAjc/e0qNcVQarvI/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6755252386286761933</id><published>2009-06-12T21:23:00.001-05:00</published><updated>2009-06-12T21:23:47.935-05:00</updated><title type='text'>Cambiar el tamaño de un archivo vdi de VirtualBox</title><content type='html'>&lt;p&gt;No me gusta colocar tutoriales que se ubican en otro sitio web, pero en este caso, además de que el tutorial resolvió el problema que tenia con el tamaño inicial del disco de windows xp en virtualbox, es tan claro de seguir que no tuve problemas con llevar el cambio de tamaño del disco duro virtual de la partición.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.my-guides.net/en/content/view/122/26/" href="http://www.my-guides.net/en/content/view/122/26/"&gt;http://www.my-guides.net/en/content/view/122/26/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Si a alguien le interesa de todos modos una traduccion, solo avisar.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6755252386286761933?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6755252386286761933/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6755252386286761933' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6755252386286761933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6755252386286761933'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2009/06/cambiar-el-tamano-de-un-archivo-vdi-de.html' title='Cambiar el tamaño de un archivo vdi de VirtualBox'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4408016136962778164</id><published>2009-06-01T22:54:00.001-05:00</published><updated>2009-06-01T22:54:32.226-05:00</updated><title type='text'>¿Dónde esta el folder de patrones en Fireworks CS3?</title><content type='html'>&lt;p&gt;En ocasiones me pongo a realizar maquetas de algun sitio web en Fireworks, aun cuando trato de usar Photoshop, lo cierto es que FW es bastante ligero y no me da lata sobretodo para la maquetacion.&amp;#160; Estoy trabajando en él para un sitio y se me ocurrio casi terminar el diseño del sitio.&lt;/p&gt;  &lt;p&gt;Pero al momento de comenzar con la creacion de los archivos de CSS para la parte grafica me tope que no sabia cual era el tamaño de los patrones que habia colocado como relleno en algunos de los fondos, lo anterior es importante para optimizar el tamaño de las imagenes.&lt;/p&gt;  &lt;p&gt;Asi que como me pase un ratito en la busqueda, pongo el folder exacto que se usa en WIndows Vista:&lt;/p&gt;  &lt;p&gt;C:\Program Files\Adobe\Adobe Fireworks CS3\Configuration\Textures&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4408016136962778164?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4408016136962778164/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4408016136962778164' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4408016136962778164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4408016136962778164'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2009/06/donde-esta-el-folder-de-patrones-en.html' title='¿Dónde esta el folder de patrones en Fireworks CS3?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8333897201255663489</id><published>2009-05-07T18:25:00.004-05:00</published><updated>2009-05-07T18:51:00.567-05:00</updated><title type='text'>Instalando Ubuntu 9.04 en una Compaq Presario 1200 LA</title><content type='html'>Me tomo un par de dias realizar la instalación de Ubuntu 9.04 en una Laptop Compaq Presario 1200. Hace tiempo ya le había instalado Ubuntu 6.10, y había funcionado de maravilla, recuerdo que en su momento probé varias versiones de Linux y la que mejor me respondió, de inicio a fin fue la de Ubuntu. Sigue gustandome esa interface que muestra. Preste esta Laptop a mi primo por una temporada, en lo que me movía de lugar y resolvía algunas cosas de la oficina. Cuando la tenia de vuelta le habian instalado Windows XP. Por supuesto que estaba muy lenta. Horas sólo para que apareciera el Internet Explorer.&lt;br /&gt;Por lo que enseguida me dí a la tarea de montar de nuevo linux. Revisé que ya estaba la nueva versión de ubuntu, la 9.04, que como su número indica representa la del mes de abril del 2009 (cada 6 meses lanzan una versión), decidí bajarla mediante un torrent, y obtuve la imagen ISO para quemar en CD. En una tarde obtuve el software para instalar.&lt;br /&gt;Ya una vez que inserte el CD, aparecio una bonita pantalla que me decía si quería instalarlo o solo ejecutarlo de forma "Live". Y de aquí en adelante la aventura.&lt;br /&gt;Resulta que desde la versión 7.10, Ubuntu maneja una versión actualizada del sistema Xorg, que trata de encontrar de forma automatica el mejor driver, monitor y resolución de la computadora donde se instala, pero en mi caso, mi tarjeta Trident no fue detectada. Esto no lo supe hasta el siguiente día en que me puse a verificar, el por qué me aparecia una pantalla vacía después de quererse instalar.&lt;div&gt;El truco aquí es instalar Ubuntu en &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;"modo seguro de gráficos"&lt;/span&gt;, al momento de la pantalla inicial se debe apretar el botón &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;F4&lt;/span&gt;. De esta manera se puede lograr la instalación. Una vez finalizado el paso anterior, es importante colocar la configuración pertinente sobre la tarjeta de video. Después de varias preguntas en ubuntuforums.org y un poco de lectura sobre el asunto. Termine con la siguiente modificacion al archivo xorg.conf (una buena recomendación es respaldar el archivo antes de cambiarlo):&lt;/div&gt;&lt;div&gt;&lt;code&gt;&lt;br /&gt;/etc/X11/xorg.conf&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" ;font-family:-webkit-monospace;font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" ;font-family:-webkit-monospace;font-size:13px;"&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;Section "Device"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Identifier "Trident Microsystems CyberBlade XPAi1"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Driver "trident"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   BusID "PCI:1:0:0"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;EndSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;Section "Monitor"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Identifier "Generic Monitor"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Option "DPMS"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   HorizSync 28-51&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   VertRefresh 43-60&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;EndSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;Section "Screen"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Identifier "Default Screen"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Monitor  "Generic Monitor"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   Device  "Trident Microsystems CyberBlade XPAi1"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   SubSection "Display"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Depth 8&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Modes "1024x768"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   EndSubSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   SubSection "Display"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Depth 16&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Modes "1024x768"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   EndSubSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   SubSection "Display" &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Depth 24&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Modes "1024x768"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   EndSubSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   SubSection "Display"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Depth 32&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;     Modes "1024x768"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;   EndSubSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm"&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-family:Courier, monospace;"&gt;&lt;span style="font-size:100%;"&gt;EndSection&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" ;font-family:-webkit-monospace;font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;De esta manera al reiniciar la laptop, ya contaba con Ubuntu 9.04 en todo su esplendor a 1024*768 sin problemas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Listo!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8333897201255663489?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8333897201255663489/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8333897201255663489' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8333897201255663489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8333897201255663489'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2009/05/instalando-ubuntu-904-en-una-compaq.html' title='Instalando Ubuntu 9.04 en una Compaq Presario 1200 LA'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4194043140992320653</id><published>2008-11-13T16:54:00.001-06:00</published><updated>2008-11-13T16:54:58.600-06:00</updated><title type='text'>Notas Innovation Tour 08 en Veracruz</title><content type='html'>&lt;p&gt;Generalmente este tipo de posts lo hago en realidad con una libreta de notas al lado, siempre en estos eventos de Microsoft, dan algo y siempre los aprovecho para ir colocando las cosas interesantes o por lo menos que yo no sabia sobre los eventos.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;El dia de hoy no tengo esta libreta a mi lado, simple y sencillamente porque no dieron en esta ocasion, no se si se debio a que era la ultima presentacion del Innovation Tour, o a que casi no se realiza en el puerto el evento.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Lo unico que tengo a mi lado son un par de postales publicitarios, uno sobre el Innovation Tour con las direcciones de algunos de los blogs de gente de Microsoft Mexico, los cuales ya tengo instalados en mi Google Reader; y el otro sobe InnovateOn.En este ultimo, tengo anotado mis notas sobre el evento:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;    &lt;li&gt;www.thirteen23.com&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Asahiyama Zoo y&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Channer 9 WPF.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;¡Y eso es todo lo que tengo!. Caray, muy mal de verdad. Fueron 3 presentaciones, la primera de Omar Aviles, hablando sobre Open Source, PHP y FastCGI. Crei que al mencionar PHP en windows hablariamos sobre Phalanger, pero no simplemente se hablo sobre como configurar PHP en Windows Server. Y eso fue todo. Honestamente un poco aburrido, lo unico rescatable fue la presentacion de Bizpark, del cual yo no tenia datos.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;En la siguiente platica hablamos sobre WPF con Roman Lozano. Me parece que presentar Tafiti, Contoso y Family.Show, como demostraciones, no se hace atractivo en lo mas minimo, solo por el echo de que tienen mucho tiempo en linea, o en el mercado como se guste decir.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Por qué? si es desarrollador Roman, no prosento algo desarrolla en la emprea  Intellekt, algo que actualmente funcione y que tengo ya en produccion.. Eso hubiera estamos mas interesante, el final.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;El final de la platica termino con una rifas, por lo moenos me llevo un llaverito con el logo del evento, algo es mejor que nada.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Lo que mas me sorprende es la gente que asistio al evento, creo que no fue las mas pobre, seguramente el evento anterior de presentacion de SQL 2008, fue el de menos asistencia. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Pero en esta ocasion el problema fue la asistencia de alumnos de la universidad, como si estubieran siendo regañados para que fieran al evento. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Aplaudo el interes de la Universidad Villa Rica, pero que pena los alumnos que no aprovecha no solo no aprovechan estos eventos, si no que tambien lo toman a broma, Yo  recuerdo haber realizado un poco de bromas en su momento, pero si vas a entrar a un evento solo para bromar con lo amigos y jugar por red WarCraft.... mejor hubiera valido la pena quedarse en el salon.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Por otra partte, creo que los regalos que ganaron los chicos de la univerdad, en espeacial el de software gratuito, seran muy desaprovechados, espero alguien le puege codigo para que no sea un desperdicio.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4194043140992320653?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4194043140992320653/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4194043140992320653' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4194043140992320653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4194043140992320653'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/11/notas-innovation-tour-08-en-veracruz.html' title='Notas Innovation Tour 08 en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-43785816843829110</id><published>2008-09-23T12:58:00.002-05:00</published><updated>2008-09-23T13:04:09.613-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='encriptar'/><title type='text'>Guardar errores en un archivo de texto de forma encriptada</title><content type='html'>&lt;p&gt;Siempre es buena practica llevar un registro de los errores que se presentan en cualquier aplicacion, creo que lo mas comun es colocar los errores en un archivo de texto, como una especie de log, o en su caso dentro de una base de datos para llevar un registro. Los habra mas sofisticados que pondra la informacion como un evento de windows.&lt;/p&gt;&lt;p&gt;Pero si no queremos que los usuarios de la aplicacion que estan de curiosos, vean y lean los errores que se producen en nuestra aplicacion, una forma practica es la de encriptar el archivo. El problema con esto es que si el archivo de texto se vuelve muy grande la encriptacion puede hacer lenta la aplicacion, ya que tienes que abrir el archivo desencriptar, colocar un mensaje, y volver a encriptar el archivo.&lt;/p&gt;&lt;p&gt;Siendo lo anterior un poco impractico decidi mejor colocar los mensajes encriptados dentro del archivo. Para lo cual modifique la clase que estoy utilizando para guardar los mensajes:&lt;/p&gt;&lt;p&gt; &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;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Shared&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt; WriteError(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; errorMessage &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;        &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;            &lt;span class="kwrd"&gt;Dim&lt;/span&gt; path &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt; = &lt;span class="str"&gt;"error.txt"&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;            &lt;span class="kwrd"&gt;If&lt;/span&gt; (&lt;span class="kwrd"&gt;Not&lt;/span&gt; File.Exists(System.Web.HttpContext.Current.Server.MapPath(path))) &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;                File.Create(System.Web.HttpContext.Current.Server.MapPath(path)).Close()&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;            &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;            Using w &lt;span class="kwrd"&gt;As&lt;/span&gt; StreamWriter = File.AppendText(System.Web.HttpContext.Current.Server.MapPath(path))&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;                w.WriteLine(Constants.vbCrLf &amp;amp; &lt;span class="str"&gt;"Error : "&lt;/span&gt;)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;                w.WriteLine(&lt;span class="str"&gt;"{0}"&lt;/span&gt;, DateTime.Now.ToString(CultureInfo.InvariantCulture))&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;                &lt;span class="kwrd"&gt;Dim&lt;/span&gt; err &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt; = &lt;span class="str"&gt;"En linea: "&lt;/span&gt; &amp;amp; System.Web.HttpContext.Current.Request.Url.ToString() &amp;amp; &lt;span class="str"&gt;". Mensaje:"&lt;/span&gt; &amp;amp; errorMessage&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;                w.WriteLine(Encrypt(err, &lt;span class="kwrd"&gt;True&lt;/span&gt;))&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;                w.WriteLine(&lt;span class="str"&gt;"__________________________"&lt;/span&gt;)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;                w.Flush()&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;                w.Close()&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;            &lt;span class="kwrd"&gt;End&lt;/span&gt; Using&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;        &lt;span class="kwrd"&gt;Catch&lt;/span&gt; ex &lt;span class="kwrd"&gt;As&lt;/span&gt; Exception&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;            WriteError(ex.Message)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; Sub&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Si observan en la linea 11 puse la palabra Encrypt, es ahi donde estoy haciendo llamar otra funcion, importando en el archivo la libreria de .net de criptografia:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Imports System.Security.Cryptography&lt;/strong&gt;&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; Encrypt(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; toEncrypt &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; useHashing &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Boolean&lt;/span&gt;) &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; keyArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;()&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; toEncryptArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;() = UTF8Encoding.UTF8.GetBytes(toEncrypt)&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; key &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt; = &lt;span class="str"&gt;"MyKEY"&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; useHashing &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;Dim&lt;/span&gt; hashmd5 &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; MD5CryptoServiceProvider()&lt;/pre&gt;&lt;pre&gt;            keyArray = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key))&lt;/pre&gt;&lt;pre class="alt"&gt;            hashmd5.Clear()&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            keyArray = UTF8Encoding.UTF8.GetBytes(key)&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; tdes &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; TripleDESCryptoServiceProvider()&lt;/pre&gt;&lt;pre class="alt"&gt;        tdes.Key = keyArray&lt;/pre&gt;&lt;pre&gt;        tdes.Mode = CipherMode.ECB&lt;/pre&gt;&lt;pre class="alt"&gt;        tdes.Padding = PaddingMode.PKCS7&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; cTransform &lt;span class="kwrd"&gt;As&lt;/span&gt; ICryptoTransform = tdes.CreateEncryptor()&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; resultArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;() = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length)&lt;/pre&gt;&lt;pre class="alt"&gt;        tdes.Clear()&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Return&lt;/span&gt; Convert.ToBase64String(resultArray, 0, resultArray.Length)&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; Function&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Ahora ya tendremos nuestros mensajes encriptados. Si queremos desencriptar los mensajes solo tendremos que usar la siguiente funcion en algun lugar y hacerla llamar:&lt;/p&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Shared&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; Decrypt(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; cipherString &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; useHashing &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Boolean&lt;/span&gt;) &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;       &lt;span class="kwrd"&gt;Dim&lt;/span&gt; keyArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;()&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; toEncryptArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;() = Convert.FromBase64String(cipherString)&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; key &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt; = &lt;span class="str"&gt;"MyKEY"&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; useHashing &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;Dim&lt;/span&gt; hashmd5 &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; MD5CryptoServiceProvider()&lt;/pre&gt;&lt;pre class="alt"&gt;            keyArray = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key))&lt;/pre&gt;&lt;pre&gt;            hashmd5.Clear()&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;            keyArray = UTF8Encoding.UTF8.GetBytes(key)&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; tdes &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; TripleDESCryptoServiceProvider()&lt;/pre&gt;&lt;pre class="alt"&gt;        tdes.Key = keyArray&lt;/pre&gt;&lt;pre&gt;        tdes.Mode = CipherMode.ECB&lt;/pre&gt;&lt;pre class="alt"&gt;        tdes.Padding = PaddingMode.PKCS7&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; cTransform &lt;span class="kwrd"&gt;As&lt;/span&gt; ICryptoTransform = tdes.CreateDecryptor()&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; resultArray &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Byte&lt;/span&gt;() = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length)&lt;/pre&gt;&lt;pre&gt;        tdes.Clear()&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Return&lt;/span&gt; UTF8Encoding.UTF8.GetString(resultArray)&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;p&gt;Tal vez usar una forma de aspx que reciba el codigo encriptado:&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;&lt;span class="asp"&gt;&amp;lt;%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="Bintech.WebForm1" %&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;!&lt;/span&gt;&lt;span class="html"&gt;DOCTYPE&lt;/span&gt; &lt;span class="attr"&gt;html&lt;/span&gt; &lt;span class="attr"&gt;PUBLIC&lt;/span&gt; &lt;span class="kwrd"&gt;"-//W3C//DTD XHTML 1.0 Transitional//EN"&lt;/span&gt; &lt;span class="kwrd"&gt;"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt; &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;="http://www.w3.org/1999/xhtml"&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Untitled Page&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;form&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="form1"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        Forma de desencriptacion:&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;asp:TextBox&lt;/span&gt; &lt;span class="attr"&gt;ID&lt;/span&gt;&lt;span class="kwrd"&gt;="TextBoxEncriptado"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;="173px"&lt;/span&gt; &lt;span class="attr"&gt;TextMode&lt;/span&gt;&lt;span class="kwrd"&gt;="MultiLine"&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;="308px"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;asp:TextBox&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;asp:Button&lt;/span&gt; &lt;span class="attr"&gt;ID&lt;/span&gt;&lt;span class="kwrd"&gt;="Button1"&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;            &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;="Button"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;asp:Label&lt;/span&gt; &lt;span class="attr"&gt;ID&lt;/span&gt;&lt;span class="kwrd"&gt;="LabelResult"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;asp:Label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;form&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Y agregar un evento al boton:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;Protected&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt; Button1_Click(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; sender &lt;span class="kwrd"&gt;As&lt;/span&gt; System.&lt;span class="kwrd"&gt;Object&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; e &lt;span class="kwrd"&gt;As&lt;/span&gt; System.EventArgs) &lt;span class="kwrd"&gt;Handles&lt;/span&gt; Button1.Click&lt;/pre&gt;&lt;pre&gt;       LabelResult.Text = Decrypt(TextBoxEncriptado.Text, &lt;span class="kwrd"&gt;False&lt;/span&gt;)&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; Sub&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-43785816843829110?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/43785816843829110/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=43785816843829110' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/43785816843829110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/43785816843829110'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/09/guardar-errores-en-un-archivo-de-texto.html' title='Guardar errores en un archivo de texto de forma encriptada'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-419026640561905570</id><published>2008-09-23T12:28:00.002-05:00</published><updated>2008-09-23T13:00:52.387-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>¿Donde desea publicar su sitio web?</title><content type='html'>&lt;p&gt; Aqui dejo un extraño error que me tope con Visual Studio 2005 a la hora de publicar un sitio web. Primero un poco de antecedentes, generalmente publico los sitios web a niver raiz del servidor, es asi,&amp;#160; que siempre modifico las preferencias de publicacion del proyecto en el cual estoy trabajando y elimino la carpeta virtual que coloca por defecto visual studio:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/vgarcias/SNknGTswmNI/AAAAAAAAAWE/5vlVHcg77xk/s1600-h/20080917z%5B3%5D.jpg"&gt;&lt;img title="20080917z" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="187" alt="20080917z" src="http://lh5.ggpht.com/vgarcias/SNknHS-qbfI/AAAAAAAAAWI/L1mvqgyXh50/20080917z_thumb%5B1%5D.jpg?imgmax=800" width="578" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;De esta manera siempre que pruebo un sitio solo tengo que colocar el url http://localhost, en ocasiones coloco un puerto especifico para el servidor de desarrollo y el de publicacion se queda con el estandar 80.&lt;/p&gt;  &lt;p&gt;Esto siempre me ha resultado. El detalle fue que en esta ocasion el servidor de publicacion debe llevar una carpeta virtual.&lt;/p&gt;  &lt;p&gt;Para empezar la talacha de apuntar a una carpeta virtual en el codigo, particularmente para los archivos de javascript y de estilos. Y realizar cambios no esperados. En fin que regrese la configuracion a la anterior:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/vgarcias/SNknINEyIiI/AAAAAAAAAWM/b3v97uRbYt0/s1600-h/20080917c%5B3%5D.jpg"&gt;&lt;img title="20080917c" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="581" alt="20080917c" src="http://lh6.ggpht.com/vgarcias/SNknJIac0tI/AAAAAAAAAWQ/pFonYRBHYNs/20080917c_thumb%5B1%5D.jpg?imgmax=800" width="596" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Con lo anterior pude seguir trabajando sin problemas para hacer depuracion del sitio. Una vez que habia terminado se me ocurrio publica la aplicacion al servidor local:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/vgarcias/SNknJ4KkzDI/AAAAAAAAAWU/NwGRG_XRmbs/s1600-h/20080917b%5B6%5D.jpg"&gt;&lt;img title="20080917b" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="362" alt="20080917b" src="http://lh3.ggpht.com/vgarcias/SNknKvu7ClI/AAAAAAAAAWY/y4_-P-4FpTc/20080917b_thumb%5B2%5D.jpg?imgmax=800" width="478" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;¿Donde deseo publicar? en localhost por supuesto. Le di “publish” y:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/vgarcias/SNknLFAmykI/AAAAAAAAAWc/OUE08ltkU7Q/s1600-h/20080917a%5B3%5D.jpg"&gt;&lt;img title="20080917a" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="131" alt="20080917a" src="http://lh6.ggpht.com/vgarcias/SNknLga-ZXI/AAAAAAAAAWg/BTYIFWvN3ZY/20080917a_thumb%5B1%5D.jpg?imgmax=800" width="486" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Que, ¿Que?. Como que no puedo publicar mi sitio de forma local. &lt;/p&gt;  &lt;p&gt;Si analizamos el mensaje, me esta diciendo que debo publicar en un sitio diferente al de la aplicacion web, pero lo cierto es que en ningun momento coloque que localhost es donde se encuentra mi aplicacion web, es mas en realidad, siendo estricto se encuentra en una carpeta llamada d:\dev.&lt;/p&gt;  &lt;p&gt;Por otra parte cuando se depura la aplicacion y se lanza el servidor de pruebas de visual studio, en ningun momento se coloca localhost, solo se coloca la carpeta virtual y a lo mas un puerto , que en mi caso era diferente al 80.&lt;/p&gt;  &lt;p&gt;Sin embargo, al parecer se guarda algun registro en algun lugar y se conserva localhost, donde se guarda el registro, no lo investigue, la verdad es que me apuraba, poder publicar el sitio para demostrarlo.&lt;/p&gt;  &lt;p&gt;Una busqueda rapida por Google, mencionaban que ese error se debia colocar a que yo estaba colocando el sitio en el mismo url, que lo cambiara por el de un sitio remoto, gran ayuda. Le di vueltas al asunto, y se me ocurrio prender la paloma de IIS Server como servidor de publicacion y colocar cualquier cosa que no fuera localhost:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/vgarcias/SNknMOREy2I/AAAAAAAAAWk/xNfojearRqg/s1600-h/20080917d%5B3%5D.jpg"&gt;&lt;img title="20080917d" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="308" alt="20080917d" src="http://lh4.ggpht.com/vgarcias/SNknMv3AtmI/AAAAAAAAAWo/UHJ5PiHtI5o/20080917d_thumb%5B1%5D.jpg?imgmax=800" width="614" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Cambie de nuevo la opcion de usar Visual Studio Dev Server para seguir trabajando como normalmente lo hago,:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/vgarcias/SNknNE9uq4I/AAAAAAAAAWs/ype5qPposBQ/s1600-h/20080917e%5B3%5D.jpg"&gt;&lt;img title="20080917e" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="575" alt="20080917e" src="http://lh3.ggpht.com/vgarcias/SNknOD-BS4I/AAAAAAAAAWw/OeqyvNPs0Fw/20080917e_thumb%5B1%5D.jpg?imgmax=800" width="549" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Como pueden apreciar el servidor de IIS no lo estoy utilizando, pero sin embargo si parece haber sido cambiado el parametro en algun lugar.&lt;/p&gt;  &lt;p&gt;Vuelvo a intentar publicar:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/vgarcias/SNknOtJzkMI/AAAAAAAAAW0/MRDoUI8yfDg/s1600-h/20080917b%5B10%5D.jpg"&gt;&lt;img title="20080917b" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="362" alt="20080917b" src="http://lh6.ggpht.com/vgarcias/SNknPI9Ut0I/AAAAAAAAAW4/OJKpFUrThb0/20080917b_thumb%5B4%5D.jpg?imgmax=800" width="478" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Y esta vez sin errores!&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-419026640561905570?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/419026640561905570/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=419026640561905570' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/419026640561905570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/419026640561905570'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/09/donde-desea-publicar-su-sitio-web.html' title='¿Donde desea publicar su sitio web?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/vgarcias/SNknHS-qbfI/AAAAAAAAAWI/L1mvqgyXh50/s72-c/20080917z_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8958186522283315170</id><published>2008-09-22T10:53:00.001-05:00</published><updated>2008-09-22T10:53:25.377-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Monitoreo de los Salarios en IT en Mexico</title><content type='html'>&lt;p&gt;La revista Software Guru esta invitando a todo programador, desarrollador, administrador o cualquiera que sea el ambito, pero involucrado en el area de la industria del software a participar en su encuesta de este 2008, los resultados apareceran en la revista en la edicion de noviembre.&lt;/p&gt;  &lt;p&gt;Ademas de ser una muy buena revista de software, me parece muy interesante conocer este tipo de indicadores.&lt;/p&gt;  &lt;p&gt;Puedes llenar la encuesta en:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sg.com.mx/component/option,com_trivia/task,view/trivia_id,3"&gt;www.sg.com.mx/component/option,com_trivia/task,view/trivia_id,3&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8958186522283315170?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8958186522283315170/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8958186522283315170' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8958186522283315170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8958186522283315170'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/09/monitoreo-de-los-salarios-en-it-en.html' title='Monitoreo de los Salarios en IT en Mexico'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6402783501484128023</id><published>2008-09-02T12:56:00.002-05:00</published><updated>2008-09-02T16:19:37.622-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Browsers'/><title type='text'>Google chrome: La solución para Ajax?</title><content type='html'>&lt;p&gt;Google anunció el lanzamiento de un nuevo browser, el cual esta destinado a solucionar, por sobretodo los problemas de memoria para las aplicaciones web que usan de forma extensiva ajax.&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/vgarcias/SL1-Z1s1MpI/AAAAAAAAAU0/T3k4IepeyGI/s1600-h/download-google-chrome%5B8%5D.jpg"&gt;&lt;img title="download-google-chrome" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="196" alt="download-google-chrome" src="http://lh5.ggpht.com/vgarcias/SL1-aS1i0mI/AAAAAAAAAU4/qLM2G2E0p_I/download-google-chrome_thumb%5B4%5D.jpg?imgmax=800" width="240" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;Aqui en  llanura.com, creemos que viene a refrescar el nicho de mercado de los navegadores de forma muy positiva. Sí, como se comenta en el &lt;a href="http://www.google.com/googlebooks/chrome/index.html"&gt;webcomic de presentacion&lt;/a&gt;, este nuevo navegador permitira tener una maquina virtual de Javascript, las posibilidades para tener mejores aplicaciones web son muchas.&lt;/p&gt;&lt;p&gt;Por lo menos para el desarrollador promedio, tener la ventaja de no estarse preocupando por apuntadores de memoria y cosas por el estilo.&lt;/p&gt;&lt;p&gt;&lt;img height="474" src="http://www.google.com/googlebooks/chrome/images/15.jpg" width="328" /&gt; &lt;/p&gt;&lt;p&gt;Me parece muy interesante que esten usando &lt;a href="http://webkit.org/"&gt;Webkit&lt;/a&gt; para el core de desarrollo del navegador, y V8 para la maquina virtual.&lt;/p&gt;&lt;p&gt;Recomiendo mucho la revision de la informacion que se presenta en la pagina &lt;a href="http://googleblog.blogspot.com/"&gt;oficial del blog de google&lt;/a&gt;, y esperar el lanzamiento de la pagina de descarga, que al parecer sera &lt;a href="http://www.gchrome.com/"&gt;&lt;del&gt;www.gchrome.com&lt;/del&gt;&lt;/a&gt; &lt;a href="http://www.google.com/chrome"&gt;www.google.com/chrome&lt;/a&gt; .&lt;/p&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6402783501484128023?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6402783501484128023/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6402783501484128023' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6402783501484128023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6402783501484128023'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/09/google-chrome-la-solucin-para-ajax.html' title='Google chrome: La solución para Ajax?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/vgarcias/SL1-aS1i0mI/AAAAAAAAAU4/qLM2G2E0p_I/s72-c/download-google-chrome_thumb%5B4%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6280637403712517354</id><published>2008-08-22T13:09:00.004-05:00</published><updated>2008-08-22T13:18:46.134-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Detectar si SQL Server esta instalado en un equipo</title><content type='html'>&lt;p&gt;Estoy tratando de crear un sencillo script en Asp.net, emulando la simplicidad de WordPress, para instalar un aplicacion web en cualquier equipo. &lt;/p&gt;&lt;p&gt;Como estoy usando SQL Server como base de datos, necesito que antes de instalar el esquema de la aplicacion en sql server, verificar que SQL server este instalado en el equipo.&lt;/p&gt;&lt;p&gt;Windows 2000 en adelante (XP, 2003, etc) trae en el core WMI el cual permite revisar, y hacer acciones sobre los servicios de windows.&lt;/p&gt;&lt;p&gt;Una herramienta muy util para esto es WMI Code Creator disponible en Microsoft, el cual me ayudo a crear la consulta destinada a descubrir los servicios del equipo.&lt;/p&gt;&lt;p&gt;Sin mas rollo el codigo:&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Management&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;span class="kwrd"&gt;Private&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; isServerInstalled(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; servername &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;) &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Boolean&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;Dim&lt;/span&gt; searcher &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; ManagementObjectSearcher( _&lt;/pre&gt;&lt;pre&gt;                &lt;span class="str"&gt;"root\CIMV2"&lt;/span&gt;, _&lt;/pre&gt;&lt;pre class="alt"&gt;                &lt;span class="str"&gt;"SELECT * FROM Win32_Service WHERE Name = '"&lt;/span&gt; &amp;amp; servername.ToUpper &amp;amp; &lt;span class="str"&gt;"'"&lt;/span&gt;)&lt;/pre&gt;&lt;pre&gt;            &lt;span class="kwrd"&gt;If&lt;/span&gt; searcher.&lt;span class="kwrd"&gt;Get&lt;/span&gt;.Count = 0 &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;Return&lt;/span&gt; &lt;span class="kwrd"&gt;False&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;For&lt;/span&gt; &lt;span class="kwrd"&gt;Each&lt;/span&gt; queryObj &lt;span class="kwrd"&gt;As&lt;/span&gt; ManagementObject &lt;span class="kwrd"&gt;In&lt;/span&gt; searcher.&lt;span class="kwrd"&gt;Get&lt;/span&gt;()&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;If&lt;/span&gt; queryObj(&lt;span class="str"&gt;"Name"&lt;/span&gt;).ToString.Equals(servername.ToUpper) &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;Return&lt;/span&gt; &lt;span class="kwrd"&gt;True&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;                    &lt;span class="kwrd"&gt;Return&lt;/span&gt; &lt;span class="kwrd"&gt;False&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;                &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;Next&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Catch&lt;/span&gt; err &lt;span class="kwrd"&gt;As&lt;/span&gt; ManagementException&lt;/pre&gt;&lt;pre class="alt"&gt;            &lt;span class="kwrd"&gt;Return&lt;/span&gt; &lt;span class="kwrd"&gt;False&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; Function&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Y para usarla dentro de la pagina:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;Protected&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt; Page_Load(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; sender &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Object&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; e &lt;span class="kwrd"&gt;As&lt;/span&gt; System.EventArgs) &lt;span class="kwrd"&gt;Handles&lt;/span&gt; &lt;span class="kwrd"&gt;Me&lt;/span&gt;.Load&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; &lt;span class="kwrd"&gt;Not&lt;/span&gt; (isServerInstalled(&lt;span class="str"&gt;"MSSQLSERVER"&lt;/span&gt;) &lt;span class="kwrd"&gt;OrElse&lt;/span&gt; isServerInstalled(&lt;span class="str"&gt;"MSSQL$SQLEXPRESS"&lt;/span&gt;)) &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            Response.Redirect(&lt;span class="str"&gt;"nosqlserver.aspx"&lt;/span&gt;)&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;Listo!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6280637403712517354?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6280637403712517354/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6280637403712517354' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6280637403712517354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6280637403712517354'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/detectar-si-sql-server-en-un-equipo.html' title='Detectar si SQL Server esta instalado en un equipo'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7913143741440808185</id><published>2008-08-14T19:02:00.004-05:00</published><updated>2008-08-22T13:19:12.723-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Función para ejecutar un procedimiento almacenado</title><content type='html'>&lt;p&gt;Continuando un poco con SQL Server y el post anterior sobre procedimientos almacenados, ahora dejo una pequeña funcion que permite recibir como parametros una cadena de textos para el nombre del procedimiento y un objeto hashtable para los parametros.&lt;/p&gt;&lt;p&gt;La idea es que esta funcion se guarde como un metodo dentro una clase para el proyecto que estamos realizando.&lt;/p&gt;&lt;p&gt;Actualmente esta clase ya cuenta con metodos para obtener un datareader, un escalar, una consulta non-query, etc. Ahora la idea es que acepte procedimientos almacenados.&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; ExecuteStoreProcedure(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; spname &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; params &lt;span class="kwrd"&gt;As&lt;/span&gt; Hashtable) &lt;span class="kwrd"&gt;As&lt;/span&gt; SqlDataReader&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; connString.State = ConnectionState.Closed &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;            connString.Open()&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; cmd &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; SqlCommand(spname, connString)&lt;/pre&gt;&lt;pre&gt;        cmd.CommandType = CommandType.StoredProcedure&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;For&lt;/span&gt; &lt;span class="kwrd"&gt;Each&lt;/span&gt; param &lt;span class="kwrd"&gt;As&lt;/span&gt; DictionaryEntry &lt;span class="kwrd"&gt;In&lt;/span&gt; params&lt;/pre&gt;&lt;pre class="alt"&gt;            cmd.Parameters.AddWithValue(param.Key, param.Value)&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Next&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt; &lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Return&lt;/span&gt; cmd.ExecuteReader&lt;/pre&gt;&lt;pre class="alt"&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; &lt;span class="rem"&gt;'ExecuteDataSet&lt;/span&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De esta manera creamos un objeto de la clase, mediante:&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; db &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; AccessDatabase&lt;/pre&gt;&lt;pre&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; oreader &lt;span class="kwrd"&gt;As&lt;/span&gt; SqlClient.SqlDataReader&lt;/pre&gt;&lt;pre class="alt"&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; hashParams &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; Hashtable&lt;/pre&gt;&lt;pre&gt;        hashParams.Add(&lt;span class="str"&gt;"@page"&lt;/span&gt;, 3)&lt;/pre&gt;&lt;pre class="alt"&gt;        hashParams.Add(&lt;span class="str"&gt;"@pagesize"&lt;/span&gt;, 50)&lt;/pre&gt;&lt;pre&gt;         oreader = db.ExecuteStoreProcedure(&lt;span class="str"&gt;"usp_getdestiniesbypage"&lt;/span&gt;, hashParams)&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Si lo deseamos podemos colocar un grid en nuestra pagina y vincular directamente el objeto datareader.&lt;/p&gt;&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;        GridView1.DataSource = oreader&lt;/pre&gt;&lt;pre class="alt"&gt;        GridView1.DataBind()&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7913143741440808185?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7913143741440808185/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7913143741440808185' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7913143741440808185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7913143741440808185'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/funcin-para-ejecutar-un-procedimiento.html' title='Función para ejecutar un procedimiento almacenado'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1351899845050043091</id><published>2008-08-14T13:03:00.001-05:00</published><updated>2008-08-14T13:03:10.885-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Notas del Seminario Tecnologico 2008 en Veracruz</title><content type='html'>&lt;p&gt;Generalmente voy colocando una serie de notas en los cuadernillos que dan para estos eventos, pero en esta ocasion, lo unico que llegue a apuntar fue la direccion del blog de Oscar Correas (&lt;a href="http://ocorreas.spaces.live.com"&gt;http://ocorreas.spaces.live.com&lt;/a&gt;), quien fue el expositor de la primera parte SQL 2008. Y algunas preguntas que le hice a él mismo. De las cuales me gusto cuales fueron las respuestas. &lt;/p&gt;  &lt;p&gt;Honestamente muchas cosas fueron nuevas para mi, o por lo menos porque no las uso. El esquema de seguridad y de planes de mantenimiento suena tremendo. Asi tambien el asunto de poder realizar reporting services sin necesidad de un IIS. Lo cual puede ser practico pues en Vista Home no se instala el IIS7. Amplio conocimiento del expositor la segunda parte, caray me dieron ganas de tomar un curso con el. No asiste al evento de Vista, porque a diferencia de mucha gente, lo uso, funciona bien, y no quiero complicarme. Sobretodo que ahora, no tengo que administrar tantos equipos. Espero empezar a usar SQL 2008 lo antes posible.&lt;/p&gt;  &lt;p&gt;Pero en esta ocasion, mis notas mas bien estan efocadas al evento mismo, y no tanto a lo nuevo que trae el producto. De entrada, como mencione muy bien los expositores, Oscar y Miguel Angel Garcia de Compueducacion (&lt;a href="http://www.compueducacion.com.mx"&gt;http://www.compueducacion.com.mx&lt;/a&gt;) dieron de manera rapida y concisa las nuevas funcionalidades del producto. Lo malo, pues la poca publicidad que dieron al evento los de Microsoft. El anterior evento fue de aproximadamente 60-70 personas, ahora solo asisitimos por ahi de 10. Pregunte por la gente de Microsoft, y nadie venia con ellos, en realidad Oscar trabaja en bSide un partner de MS, caray ni siquiera Humberto Aguirre que esta situado en Veracruz, estuvo durante todo el evento, llego y se fue. Algunos participantes felices porque se llevaron un paquete de cuadernillos o de plumas que al final regalaron, asi como&amp;#160; los libros, que solo porque no eran de herramientas de desarrollo o de servidores, no me puse a pelearlos. :D&lt;/p&gt;  &lt;p&gt;Espero que la poca asistencia no provoque que de repente no vengan a impartir estas platicas.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;p&gt;pd. Oscar Correas y yo estuvimos de acuedo que el evento de blogit.ms estuvo muy chafa… que casualidad que el ganador de un dia para otro tuvo como 800 votos… mmmm&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1351899845050043091?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1351899845050043091/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1351899845050043091' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1351899845050043091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1351899845050043091'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/notas-del-seminario-tecnologico-2008-en.html' title='Notas del Seminario Tecnologico 2008 en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4669413613509794549</id><published>2008-08-01T19:10:00.004-05:00</published><updated>2008-08-14T12:42:35.665-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Browsers'/><title type='text'>Calcular pago del recibo de honorarios en linea</title><content type='html'>&lt;p&gt;En ocasiones tengo que dar recibos de honorarios por algun trabajo realizado. Por lo cual tengo un archivo de excel para esto. Con la migracion a mi nueva laptop, no encuentro el CD donde respalde el archivo, el dia menos pensado aparece.&lt;/p&gt;&lt;p&gt;Creo que ya era oportuno tener el archivo de excel, en Google Apps o algo por el estilo. No hace mucho lei en la revista de &lt;a href="http://www.sg.com.mx/"&gt;Software Guru&lt;/a&gt;, sobre un caso en el cual lograron mediante Zoho tener una pequeña aplicacion que funcionaba como un webservice.&lt;/p&gt;&lt;p&gt;Me parecio interesante el asunto de poder colocar un webservice para el calculo, en realidad no toma, mucho y seria practico colocarlo en otras aplicaciones. Igual ya me estoy ideando una aplicacion completa para facturacion (mensaje para el Robert y SICFE.Net).&lt;/p&gt;&lt;p&gt;Busque en &lt;a href="http://www.zoho.com/"&gt;Zoho&lt;/a&gt;, y despues de una pequeña batalla con mi usuario y contraseña, experimente colocar mi primera “Aplicacion” con Zoho Creator.&lt;/p&gt;&lt;p&gt;Al principio no entendi muy bien en que estaba programando, pense por un instante que era Javascript, pero no es algo diferente, una especie de JSON, sin serlo. Diferente.&lt;/p&gt;&lt;p&gt;El entorno es bastante amigable, logre entender el lenguaje y despues de 30-40 minutos, tengo el resultado:&lt;/p&gt;&lt;p&gt;&lt;a href="http://creator.zoho.com/vgarcias21/form/1/"&gt;http://creator.zoho.com/vgarcias21/form/1/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;iframe name="zohoform1" src="http://creator.zoho.com/showForm.do?formLinkId=1&amp;amp;link=true&amp;amp;sharedBy=vgarcias21" frameborder="0" width="100%" scrolling="no" height="367"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;p&gt;El resultado no es totalmente un servicio web, pero funciona bastante bien y es lo que andaba buscando hacer. El codigo del script es el siguiente:&lt;/p&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&lt;br /&gt;&lt;pre class="alt"&gt;form Recibo_de_Honorario &lt;/pre&gt;&lt;pre&gt;{ &lt;/pre&gt;&lt;pre class="alt"&gt;    displayname = &lt;span class="str"&gt;"Recibo de Honorario"&lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;    Cantidad_a_recibir &lt;/pre&gt;&lt;pre class="alt"&gt;    ( &lt;/pre&gt;&lt;pre&gt;        displayname = &lt;span class="str"&gt;"Cantidad a recibir"&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;        type = MXN &lt;/pre&gt;&lt;pre&gt;        width = 20 &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    Monto_en_recibo &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    IVA_15 &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95 * 0.15) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    Valor_total &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95 * 1.15) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    Ret_10_ISR &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95 * 0.1) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    Ret_10_IVA &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95 * 0.1) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    Valor_neto &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = formula &lt;/pre&gt;&lt;pre&gt;        value = (Cantidad_a_recibir / 0.95 * 1.15 - Cantidad_a_recibir / 0.95 * 0.2) &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    plain &lt;/pre&gt;&lt;pre&gt;    ( &lt;/pre&gt;&lt;pre class="alt"&gt;        type = plaintext &lt;/pre&gt;&lt;pre&gt;        value = &lt;span class="str"&gt;"&amp;amp;lt;DIV id=ted&amp;amp;gt;Consulta el resultado en: &amp;amp;lt;A href=\"http://creator.zoho.com/vgarcias21/view/1//%22&amp;amp;gt;http://creator.zoho.com/vgarcias21/view/1/&amp;amp;lt;/A&amp;amp;gt; &amp;amp;lt;/DIV&amp;amp;gt;"&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;    ) &lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4669413613509794549?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4669413613509794549/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4669413613509794549' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4669413613509794549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4669413613509794549'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/calcular-pago-del-recibo-de-honorarios.html' title='Calcular pago del recibo de honorarios en linea'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2347389058565795895</id><published>2008-08-01T13:15:00.001-05:00</published><updated>2008-08-01T13:15:31.032-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Comunidad IT Pros y MS Innovation Tour 2008 en Veracruz</title><content type='html'>&lt;p&gt;La comunidad de IT Pros Mexico esta invitando a unos seminarios que se realizaran sobre Windows Vista y Microsoft SQL, se llevaran a cabo en distintas ciudades de la republica, y entre ellas incluiran Veracruz, el Martes, 12 de agosto de 2008.&lt;/p&gt;  &lt;p&gt;Además el próximo 27 de Agosto de 2008 andaran por aqui los de Microsoft con algunos temas interesantes:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;10:00 - 11:00 Technology Business Preview      &lt;br /&gt;11:00 - 12:00 Aceleración de Negocio       &lt;br /&gt;12:00 - 12:30 Break (Café, Galletas) - 30 personas       &lt;br /&gt;12:30 - 13:30 Programas para Empresas de Microsoft       &lt;br /&gt;13:30 - 15:00 Networking       &lt;br /&gt;Track de Tecnología       &lt;br /&gt;15:00 - 16:00 Enterprise 2.0 Blogs, Wikis, Mashups, RSS, redes sociales y bancos de ideas, se han convertido en uno de los mejores métodos para compartir información no estructurada dentro de las organizaciones, aprende como integrar ésta información con los datos estructurados de las organizaciones para agilizar y mejorar los procesos de negocio. OBA y Sharepoint       &lt;br /&gt;16:00 - 17:00 Aprovechando el poder de Windows. Windows Presentation Foundation, WorkFlow Foundation, Communication Foundation, son de los principales avances que el framework tiene para el desarrollo de aplicaciones. Aprende como generar aplicaciones altamente confiables y de alto rendimiento, ASI COMO Las consideraciones que debes de tener en cuanto a compatibilidad con Windows Vista       &lt;br /&gt;17:00 - 17:30 Break       &lt;br /&gt;17:30 - 18:30 Web 2.0 y Servicios de Datos. La integración de los servicios de internet que ofrecen Windows Live nos permiten crear la nueva generación de aplicaciones interactivas en conjunto con el poder de Visual Studio y las nuevas funcionalidades de SQL 2008 descubre las nuevas posibilidades que tienes       &lt;br /&gt;18:30 - 19:30 Interoperabilidad MySQL, PHP, SQL Express, hay muchas inversiones que se han hecho en estas tecnologías. Descrubre como sacarle el máximo a estos desarrollos y como lograr lo mejor de estos mundos.       &lt;br /&gt;19:30 - 20:00 Enthusiasts Talk&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Me interesa mucho ver qué presentan con PHP, seguro harán el comparativo de SQL Express y MySQL. Espero este interesante.&lt;/p&gt;  &lt;p&gt;Al parecer el evento se realizará en el Fiesta Americana. No he visto todavia la forma de registro para el evento toda la informacion la esta publicando &lt;a href="http://blogs.msdn.com/jaimesb/default.aspx"&gt;Jaime Sanchez&lt;/a&gt;, lo curioso es que al parecer no tiene una pagina en el sitio de Microsoft. La informacion ha sido lanzada en Facebook, Hi5 y en Blogs MSDN. Pareciera que quieren que la noticia del evento sea un tanto viral, y no tan formal.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2347389058565795895?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2347389058565795895/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2347389058565795895' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2347389058565795895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2347389058565795895'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/08/comunidad-it-pros-y-ms-innovation-tour.html' title='Comunidad IT Pros y MS Innovation Tour 2008 en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-9107644217347729363</id><published>2008-07-31T19:04:00.001-05:00</published><updated>2008-07-31T19:04:00.961-05:00</updated><title type='text'>Mojave: 18 meses tarde.</title><content type='html'>&lt;p&gt;No me gusta hablar sobre una noticia que todo el mundo esta reportando, es más este blog, se ha vuelto casi personal, una especie de guia de tips para el día a día de programación que voy descubriendo segun necesito. Pero existe tanto comentario sobre “&lt;strong&gt;&lt;a href="http://www.mojaveexperiment.com/"&gt;El Experimento Mojave&lt;/a&gt;&lt;/strong&gt;”, que me decidi a poner mi reflexion personal sobre el asunto.&lt;/p&gt;  &lt;p&gt;Creo que como puntualiza &lt;a href="http://msdnfan.blogspot.com/"&gt;Héctor Obregón&lt;/a&gt;, en su blog, “Sin el hardware adecuado Vista funciona mucho peor que XP.”, y creo que lo mas curioso es que la gente mas critica sobre el sistema operativo es gente del medio de la informatica. Yo en particular no he oido a alguien fuera de este cerrado ambito de geek, nerds o como se le quiera llamar, que critique tanto Vista. Seguro, todo el mundo quiere mas velocidad, muchas mas velocidad, pero lo cierto tambien que el usuario final reconoce que entre mas memoria, entre mas velocidad mejor la experiencia en cualquier computadora, sea Windows XP o sea Vista, MacOS, Ubuntu o lo que sea.&lt;/p&gt;  &lt;p&gt;El lanzamiento de Vista fue en Enero del 2007, hace 18 meses (a fecha de este post). En el mercado todavia habia maquinas en venta con 512 Mb, ¿De verdad alguien con un poco de experiencia en sistemas, pensó que era suficiente para Vista?.&lt;/p&gt;  &lt;p&gt;Personalmente no sali corriendo ese enero, ni en febrero, ni agosto, ni en diciembre a comprar windows vista. Espere 17 meses a compra una maquina que realmente soportara el nuevo SO (&lt;a href="http://llanura.blogspot.com/2008/07/virtualizacin-en-windows-vista-home.html"&gt;ver mi post anterior&lt;/a&gt;) .&lt;/p&gt;  &lt;p&gt;Francamente trabaja de maravilla. La nueva laptop es familiar, es decir cualquier persona en la casa tiene acceso a esa maquina, y antes de la compra comente que tendria Vista, me preguntaron “¡solo quiero que sea mas rapida que mi laptop!”.&lt;/p&gt;  &lt;p&gt;Sabia, que no era una cuestion de sistema operativo, es una cuestion de hardware. &lt;a href="http://www.matuk.com/2008/07/30/el-experimento-mojave/"&gt;Javier Matuk&lt;/a&gt; comenta en su blog “Quizás el público esperaba otra cosa, sobre todo por las necesidades de hardware que exige el producto…”, yo replanteo el asunto a una cuestion de economia, la nueva laptop me costo mucho menos que la anterior y es muy superior a la que tenia, claro que hace 18 meses, pensar en comprar una PC con 4Gb en RAM por menos de $1,500 usd, era impensable, pero era cuestion de esperar, ahora es mas que accesible. &lt;/p&gt;  &lt;p&gt;Si yo le pusiera Windows XP a esta nueva laptop, creo que si funcionaria mucho mas rapida, pero el usuario en la familia usa la computadora para ver videos de internet, para ver las fotos de la familia y amigos, para escribir un archivo de word, crear una hoja de calculo y para esto Vista es indudablemente mas facil de usar.&lt;/p&gt;  &lt;p&gt;Pero… UAC, que con UAC, he usado MacOS Tiger por mas de 4 años, y ubuntu desde la version 5, es lo mismo. Prefieren perder un dia entero por algun virus, que estar apretando un par de boton alla cada que se instala alguna aplicacion.&lt;/p&gt;  &lt;p&gt;Es el mejor sistema operativo? Puede ser que no, pero honestamente mas sencillo de usar que muchos anteriores (incluyendo algunas versiones de Mac). ¿Se puede mejorar? Claro que si, para empezar el SP1.&lt;/p&gt;  &lt;p&gt;Como desarrollador, espero que eventualmente desaparezcan las maquinas, no que tienen Windows XP, sino las que tienen 1Gb no importa que SO tengan… ;)&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-9107644217347729363?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/9107644217347729363/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=9107644217347729363' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9107644217347729363'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9107644217347729363'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/07/mojave-18-meses-tarde.html' title='Mojave: 18 meses tarde.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4987607401959976496</id><published>2008-07-17T20:45:00.001-05:00</published><updated>2008-07-17T20:45:42.623-05:00</updated><title type='text'>Virtualización en Windows Vista Home</title><content type='html'>&lt;h4&gt;Antecedentes&lt;/h4&gt;  &lt;p&gt;Hace unas semanas recib&amp;#237; mi nueva laptop, es una Dell Vostro 1510, con 4gb en ram, un procesador de 2.0Ghz y un disco duro de 250 Gb. Me parece que vali&amp;#243; la pena la compra.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/vgarcias/SH_1qUqwWpI/AAAAAAAAAOo/q7pL8zmoz-I/puntuacion%5B3%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="287" alt="puntuacion" src="http://lh4.ggpht.com/vgarcias/SH_1r_mBxlI/AAAAAAAAAOs/kOjk3iJUZp4/puntuacion_thumb%5B1%5D.png" width="394" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;A diferencia de las compras anteriores, en esta ocasi&amp;#243;n, decid&amp;#237; comprar algo no tan exagerado, que cubriera un poco mas de las expectativas del sistema operativo, y listo.&lt;/p&gt;  &lt;p&gt;Pude haberle comprado, una tarjeta gr&amp;#225;fica mejor o en su caso un mejor procesador, pero la idea es compra una nueva laptop en dos a&amp;#241;os aproximadamente y no como antes que me esperaba casi 5 a&amp;#241;os en una nueva compra.&lt;/p&gt;  &lt;h4&gt;Problema&lt;/h4&gt;  &lt;p&gt;Ahora bien, en esta ocasi&amp;#243;n la computadora es para la casa, es decir no ser&amp;#233; el &amp;#250;nico usuario de ella, por lo que estoy tratando de tomar algunas precauciones, una de ellas no quiero tener una m&amp;#225;quina con varias versiones de visualstudio, varias versiones de apache, varias versiones php, etc. Y despu&amp;#233;s de un tiempo y con varias versiones de todo, borrado cosas indebidas, visitados blogs con virus, y un largo etc. Siempre siento que la velocidad de la computadoras, empieza a sufrir, independiente de otros aspectos, como uso de disco, etc.&lt;/p&gt;  &lt;h4&gt;Soluci&amp;#243;n&lt;/h4&gt;  &lt;p&gt;Tomando la informaci&amp;#243;n de &lt;a href="http://blogs.technet.com/rubencolomo/archive/2008/02/27/virtualizaci-n.aspx"&gt;Ruben Colomo sobre la virtualizacion&lt;/a&gt;, se me ocurri&amp;#243; que podr&amp;#237;a utilizar Virtual PC 2007 y tener en la misma m&amp;#225;quina dos sistemas operativos, ya que en realidad mucho de lo que todav&amp;#237;a hago es es windows xp.&lt;/p&gt;  &lt;p&gt;Si bien podr&amp;#237;a haberlo instalado con VPC 2007, me mando un mensaje de que el sistema no es el adecuado para ejecutar VPC 2007, supongo que requiere tal vez un Windows Vista Ultimate, (cosa que por precio decid&amp;#237; no tener) o yo que se, total que no quer&amp;#237;a empezar con ese tipo de mensajes en esta nueva laptop.&lt;/p&gt;  &lt;p&gt;Cuando me llego un DVD de Sun, hace un mes, instal&amp;#233; en la vieja m&amp;#225;quina &lt;a href="http://www.virtualbox.org/"&gt;VirtualBox&lt;/a&gt;, pero la verdad fue un fraude, por mi antigua laptop, no por la aplicaci&amp;#243;n, cuando quer&amp;#237;a crear un m&amp;#225;quina virtual, casi me quedaba sin RAM.&lt;/p&gt;  &lt;p&gt;Instale en esta nueva computadora, VirtualBox que adem&amp;#225;s es opensource, y funciona muy, pero muy bien. Y puedo instalar no solo sistemas operativos de Microsoft, sino que inclusive puedo colocar otros como linux y pr&amp;#243;ximamente MacOS.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/vgarcias/SH_1tHECBVI/AAAAAAAAAOw/HxqKWIw8tYI/virtualbox%5B5%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="317" alt="virtualbox" src="http://lh4.ggpht.com/vgarcias/SH_1uS9LZkI/AAAAAAAAAO0/sox5t9auOyM/virtualbox_thumb%5B3%5D.png" width="418" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#191;Por qu&amp;#233; hacer esto Windows en Windows?... ya imagino alguno que otro criticando por el asunto, y comentando que mejor linux... mejor una partici&amp;#243;n, etc.&lt;/p&gt;  &lt;p&gt;Bueno, la idea es instalar todo los programas beta que se me ocurra y no tener conflictos, por otra parte es mas f&amp;#225;cil realizar un respaldo de una m&amp;#225;quina virtual que de toda la laptop, la otra es seguridad, espero que los muchos problemas que todav&amp;#237;a tiene windows xp de virus, no los sufra en vista, pero no quiero que se contaminen las dos cosas al mismo tiempo, luego tengo que sufrir un par de d&amp;#237;as por diferentes virus.&lt;/p&gt;  &lt;p&gt;Pero sobretodo, como mencione poder realizar pruebas y mas pruebas con diferentes versiones de aplicaciones desde alpha, beta, rc, etc.&lt;/p&gt;  &lt;p&gt;El proceso es muy sencillo, eso si debes tener listo tu disco de instalaci&amp;#243;n de Windows XP, o del sistema operativo a instalar. Solo es crear la m&amp;#225;quina virtual, seleccionar el espacio en disco duro que se quiera utilizar, asignar la memoria RAM que en este caso estoy poniendo 512 Mb para WinXP que debe ser suficiente, si requiero mas, puede ser que le suba a 1Gb. Y finalmente montar el CD para la instalaci&amp;#243;n.&lt;/p&gt;  &lt;p&gt;Windows Vista Home quedar&amp;#225; como una herramienta casera, de v&amp;#237;deos, de fotograf&amp;#237;as, y edici&amp;#243;n de im&amp;#225;genes, es decir las cosas realmente importantes, mientras que para Windows XP, seguir&amp;#233; con la labor de programaci&amp;#243;n bajando y quitando componentes para VS2008SP1 Beta, MVC Preview 4, AppEngine Pre-Alpha, Cake 1.2b, etc... ;)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/vgarcias/SH_1v8xUetI/AAAAAAAAAO4/2pYNSNAwoWw/WinxpVirtual%5B4%5D.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="310" alt="WinxpVirtual" src="http://lh4.ggpht.com/vgarcias/SH_1xTBLVGI/AAAAAAAAAO8/qawKv4se1J0/WinxpVirtual_thumb%5B2%5D.png" width="480" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4987607401959976496?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4987607401959976496/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4987607401959976496' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4987607401959976496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4987607401959976496'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/07/virtualizacin-en-windows-vista-home.html' title='Virtualización en Windows Vista Home'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/vgarcias/SH_1r_mBxlI/AAAAAAAAAOs/kOjk3iJUZp4/s72-c/puntuacion_thumb%5B1%5D.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7971694200294136163</id><published>2008-07-03T17:33:00.004-05:00</published><updated>2008-07-03T17:55:07.494-05:00</updated><title type='text'>32 Aplicaciones Open Source indispensables</title><content type='html'>&lt;p&gt;A raiz que tengo que formatear mi Laptop, obtuve una pequeña lista de aplicaciones que actualmente tengo en mi PC, las cuales se han vuelto casi necesarias en mi dia a dia. Algunas de ellas son mas bien aplicaciones web, pero que me permiten desarrollar la consultoria de diseño web en Llanura.com.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;A continuacion la lista:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=7-Zip"&gt;7-Zip&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Audacity"&gt;Audacity&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Azureus"&gt;Azureus&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Claroline"&gt;Claroline&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Drupal"&gt;Drupal&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Elastix"&gt;Elastix&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=eMule"&gt;eMule&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=FileZilla"&gt;FileZilla&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Firebird"&gt;Firebird&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Firefox"&gt;Firefox&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=FluxBB"&gt;FluxBB&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=FreeMind"&gt;FreeMind&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Inkscape"&gt;Inkscape&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=KeePass+Password+Safe"&gt;KeePass Password Safe&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Magento"&gt;Magento&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Mono"&gt;Mono&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Notepad++"&gt;Notepad++&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=OpenOffice.org"&gt;OpenOffice.org&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=phpMyAdmin"&gt;phpMyAdmin&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Pidgin"&gt;Pidgin&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=PortableApps.com+Portable+Software/USB"&gt;PortableApps.com: Portable Software/USB&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Shareaza"&gt;Shareaza&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Stellarium"&gt;Stellarium&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=VLC"&gt;VLC&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=WordPress"&gt;WordPress&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Wine+Is+Not+an+Emulator"&gt;Wine Is Not an Emulator&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=WinMerge"&gt;WinMerge&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=WinSCP"&gt;WinSCP&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=XAMPP"&gt;XAMPP&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=XOOPS+Dynamic+Web+CMS"&gt;XOOPS Dynamic Web CMS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=Zenoss+Core+Enterprise+Monitoring"&gt;Zenoss Core - Enterprise IT Monitoring&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com.mx/search?q=ZK+Simply+Ajax+and+Mobile"&gt;ZK - Simply Ajax and Mobile&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7971694200294136163?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7971694200294136163/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7971694200294136163' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7971694200294136163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7971694200294136163'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/07/32-aplicaciones-open-source.html' title='32 Aplicaciones Open Source indispensables'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2792582724931738186</id><published>2008-05-27T11:30:00.001-05:00</published><updated>2008-05-27T11:30:43.920-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Live'/><title type='text'>Top Blogger Microsoft</title><content type='html'>&lt;p&gt;Con motivo del concurso de Top Blogger Microsoft, en esta ocasion, empiezo una serie en la cual estare presentando como usar la herramienta de Expression Studio para realizar una aplicacion web. En este caso la idea es lograr una aplicacion que utilice las ultimas tecnologias de microsoft, y algunas experimentales, para lograr una aplicacion que nos permita llevar un registro medico personal, aun cuando el clasico ejemplo es crear un blog, creo que es mas interesante algo que pueda ser util, ademas hay muchos ejemplos de crear un blog.&lt;/p&gt;  &lt;p&gt;Cualquiera puede registrarse en &lt;a title="http://www.blogit.ms/" href="http://www.blogit.ms/"&gt;http://www.blogit.ms/&lt;/a&gt;, debes seleccionar una de las categorias del concurso de Microsoft son:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Windows: XP&amp;#160; y Vista &lt;/li&gt;    &lt;li&gt;Seguridad: Forefront, ISA Server y OneCare &lt;/li&gt;    &lt;li&gt;Management: System Center &lt;/li&gt;    &lt;li&gt;Windows Server: 2003, 2003 R2 y 2008 &lt;/li&gt;    &lt;li&gt;Comunicaciones unificadas: Exchange, Office Server &lt;/li&gt;    &lt;li&gt;Microsoft SQL Server &lt;/li&gt;    &lt;li&gt;Microsoft Sharepoint server &lt;/li&gt;    &lt;li&gt;Microsoft Expression &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Supongo que no incluyen Visual Studio, porque mucha gente lo usa, y me parece que el objetivo es descubrir&amp;#160; las otras herramientas.&lt;/p&gt;  &lt;p&gt;En mi caso la categoria seleccionada es Microsoft Expression, lo mas cercano a programacion. &lt;/p&gt;  &lt;p&gt;Si gustan de este blog, no duden en participar eviando sus votos, dar un click no perjudica la salud.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2792582724931738186?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2792582724931738186/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2792582724931738186' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2792582724931738186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2792582724931738186'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/05/top-blogger-microsoft.html' title='Top Blogger Microsoft'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1019233816124304109</id><published>2008-05-12T11:17:00.001-05:00</published><updated>2008-05-12T11:17:14.962-05:00</updated><title type='text'>¿QUIEN TIENE LA OPINION DE MAYOR PESO EN LAS TI EN MEXICO?</title><content type='html'>&lt;p&gt;CNNExpansion.com mediante el blog de e-volution que escribe Eugenio Velazquez a recomendacion mia puso una encuesta para encontrar a pesos pesados de TI en Mexico. Esto basado en una reciente encuesta que salio en eWeek. Dejo links:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://www.cnnexpansion.com/blogs/e-volution/archive/2008/05/10/quien-tiene-la-opinion-de-mayor-peso-en-las-ti-en-mexico" href="http://www.cnnexpansion.com/blogs/e-volution/archive/2008/05/10/quien-tiene-la-opinion-de-mayor-peso-en-las-ti-en-mexico"&gt;http://www.cnnexpansion.com/blogs/e-volution/archive/2008/05/10/quien-tiene-la-opinion-de-mayor-peso-en-las-ti-en-mexico&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.eweek.com/c/a/Infrastructure/The-Top-100-Most-Influential-People-in-IT/" href="http://www.eweek.com/c/a/Infrastructure/The-Top-100-Most-Influential-People-in-IT/"&gt;http://www.eweek.com/c/a/Infrastructure/The-Top-100-Most-Influential-People-in-IT/&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1019233816124304109?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1019233816124304109/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1019233816124304109' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1019233816124304109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1019233816124304109'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/05/quien-tiene-la-opinion-de-mayor-peso-en.html' title='¿QUIEN TIENE LA OPINION DE MAYOR PESO EN LAS TI EN MEXICO?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6466675503986280834</id><published>2008-05-10T11:03:00.001-05:00</published><updated>2008-05-10T11:11:18.147-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><category scheme='http://www.blogger.com/atom/ns#' term='General'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>En Veracruz se cumplen los sueños</title><content type='html'>&lt;p&gt;En el post &lt;a href="http://llanura.blogspot.com/2007/11/notas-del-tour-tecnolgico-de-microsoft.html"&gt;Notas del Tour Tecnol&amp;#243;gico de Microsoft en Veracruz&lt;/a&gt; de noviembre exponia que las soluciones de telefonia que proponia Microsoft eran de sue&amp;#241;o, &amp;#191;Por qu&amp;#233;?, por la simple razon que el omnipresente proveedor de internet en M&amp;#233;xico, Telmex, no da conexion sincrona en el servicio, es decir se pueden obtener velocidades de 1Mb, 2Mb o mas de bajada, pero para la subida, se conmuta a la velocidad de 128kbps. Lo cual no permite algunas de las propuestas que en su momento platicaba &lt;a href="http://blogs.technet.com/rubencolomo/"&gt;Ruben Colomo,&lt;/a&gt; es asi, que me quede con un sentimiento de enso&amp;#241;aci&amp;#243;n, lo cual no es malo, no hay como la esperanza.&lt;/p&gt;  &lt;p&gt;Pero por lo menos en Veracruz, el sue&amp;#241;o se cumple. &lt;a href="http://www.intranetworks.com.mx/"&gt;IntraNetworks&lt;/a&gt; es una compa&amp;#241;ia veracruzana, que esta llevando WiFi a toda la ciudad, desde hace un mes. Usa anchos de banda de hasta 4Mb... SINCRONOS!..&lt;/p&gt;  &lt;p&gt;Y entonces si se puede lograr algunos de los servicios de &lt;a href="http://www.microsoft.com/latam/uc/default.mspx"&gt;Microsoft Unified Communications&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Si se puede, si se puede.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6466675503986280834?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6466675503986280834/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6466675503986280834' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6466675503986280834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6466675503986280834'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/05/en-veracruz-se-cumplen-los-sueos.html' title='En Veracruz se cumplen los sueños'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1456317623832188388</id><published>2008-04-18T16:30:00.001-05:00</published><updated>2008-04-18T16:30:41.059-05:00</updated><title type='text'>¡Mañana perdida, gracias Microsoft!</title><content type='html'>&lt;p&gt;De verdad que nunca le echo la culpa a Microsoft por el tiempo que se puede llegar a perder en la computadora, desde el asunto de estar buscando la documentacion apropiada para algun control de VS o para algun problema ocasionado por un virus, etc.&lt;/p&gt;  &lt;p&gt;De verdad muchas veces pierdo el tiempo en cosas que no tienen que ver mas que con el mantenimiento de las computadoras, entre instalar versiones beta, instalar software de dudosa reputacion, etc.&lt;/p&gt;  &lt;p&gt;Pero... en esta ocasi&amp;#243;n, en esta ocasi&amp;#243;n honestamente si culpa a Microsoft, porque no hice algo equivocado. Cuento la historia:&lt;/p&gt;  &lt;p&gt;ANTECEDENTES&lt;/p&gt;  &lt;p&gt;Recibi una computadora nueva para trabajar, y nueva es un decir, digamos que yo no usaba, me la dieron con windows xp recien cargado (&amp;#191;por qu&amp;#233; no con vista? esa es otra historia).&lt;/p&gt;  &lt;p&gt;INSTALACION&lt;/p&gt;  &lt;p&gt;Empece por instalar mi peque&amp;#241;a lista de software, para poder desarrollar, entre esos incluidos office, visual studio, componentes adicionales de visual, notepad++, netbeans, drivers de impresora, sqlserver, azureus, firefox, thunderbird, sql server... etc.&lt;/p&gt;  &lt;p&gt;A continuacion los updates... y ahi si... irme a mi casa y descansar... al otro dia listo... la maquina con todos los updates, de todo.... incluidos los de hardware...&lt;/p&gt;  &lt;p&gt;La deje por el momento asi, cargar mis documentos importantes, los desarrollos, la maquina esta particionada, entonces, poner en d: todo lo que se puede salvar, para el infortunio problable de una futura restauracion.&lt;/p&gt;  &lt;p&gt;A continuacion regresamos a los update, si claro, los updates de los update o no?... otra nochecita que bajen los updates... a descansar.&lt;/p&gt;  &lt;p&gt;ACTUALIZACIONES&lt;/p&gt;  &lt;p&gt;Lunes y Martes perdidos en poner al tiro la computadora... recorro mi plan de trabajo los dos dias, es decir mi propio update, perfecto, todo va bien.&lt;/p&gt;  &lt;p&gt;Abro Visual Studio y a pegarle... listo, correos a leer, escribir en este blog, parece que va bien la semana.&lt;/p&gt;  &lt;p&gt;JUEVES&lt;/p&gt;  &lt;p&gt;Momento de usar nuestro treeview, un componente de obout.com para el desarrollo, ejecutos el archivo de la documentacion el cual es un sitio web, y pum me pide el iis, &amp;#161;Cierto el iis!. Agregar componentes de windows, aprovechamos y colocamos el ftp server, por cualquier cosa. Se instala y bien. Visitamos windows update por si las dudas y todo bien, un nuevo update pero no tiene que ver con iis, pesa poco como va, a instalar. Debug en el proyecto, todo bien, el control aparece.... ya revise documentacion. Fin del dia.&lt;/p&gt;  &lt;p&gt;VIERNES&lt;/p&gt;  &lt;p&gt;&amp;#191;En que me quede? Ah si, ver la documentacion de obout para agregar otros eventos, pum no se puede ejecutar la pagina aspx en el iis, &amp;#161;Que tonto soy!... configurar Net 2.0 en el iis. Propiedades, pesta&amp;#241;ita ASP.net, ya quedo. Veamos.&lt;/p&gt;  &lt;p&gt;PUM!&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;System.Web.Hosting.HostingEnvironmentException: Failed to access IIS metabase. The process account used to run ASP.NET must have read access to the IIS metabase (e.g. IIS://servername/W3SVC). For information on modifying metabase permissions, please see &lt;a href="http://support.microsoft.com/?kbid=267904"&gt;http://support.microsoft.com/?kbid=267904&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;What! Metabase? Como crees!!! no no...mmm.... tiene liga super!&lt;/p&gt;  &lt;p&gt;Leer documentacion el sitio de microsoft.... bajar Metaacl.exe... que un .vbs... en scripts.... agregale usuario.... NO, que siempre no porque si usas net, mejor uses aspnet_regiis.... mmm... por fin...&lt;/p&gt;  &lt;p&gt;Ok, command prompt y que bill gates me ayude...&lt;/p&gt;  &lt;p&gt;Nada..., ok google... metabase error..., que metaexplorer, metaedit, resource kit de iis 6.0, .... mmm&lt;/p&gt;  &lt;p&gt;&amp;quot;recomiendo reinstalar iis&amp;quot;... ok... componente de windows.... quita palomita y listo...&lt;/p&gt;  &lt;p&gt;Regclean por si las dudas...&lt;/p&gt;  &lt;p&gt;reiniciar...&lt;/p&gt;  &lt;p&gt;Otra vez... componnentes de windows pon palomita....&lt;/p&gt;  &lt;p&gt;mmm....&lt;/p&gt;  &lt;p&gt;Veamos... documentacion de obout... nada... PUM mismo error...&lt;/p&gt;  &lt;p&gt;GOOGLE&lt;/p&gt;  &lt;p&gt;Uchala... google...&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.forosdelweb.com/f29/failed-access-iis-metabase-377469/" href="http://www.forosdelweb.com/f29/failed-access-iis-metabase-377469/"&gt;http://www.forosdelweb.com/f29/failed-access-iis-metabase-377469/&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;quot;El problema est&amp;#225; que si instalas primero el V.S o el Frameworks y luego el IIS te puede dar este problemita. As&amp;#237; que lo que hice para resolverlo es ir a panel de control, agregar o quitar programar y reparar frameworks y listo.&amp;quot;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;QUE!!!!&lt;/p&gt;  &lt;p&gt;Como es de esperarse, hice lo anterior... y se resolvio el asunto, moraleja, nunca, nunca instalar Visual Studio o el Net framework, sin antes instalar IIS. NUNCA.&lt;/p&gt;  &lt;p&gt;Segunda moraleja, no seguir las ligas de &amp;quot;solucion&amp;quot; que provee Microsoft, sin antes consultar Google, lo siento Live Search, google es google.&lt;/p&gt;  &lt;p&gt;&amp;#191;Por que echarle la culpa a Microsoft? En ninguna parte de la &amp;quot;solucion&amp;quot; del sitio de soporte se habla sobre este comportamiento. Te hace utilizar herramientas de edicion de la metabase del iis, que de por si, el usa de metabase me preocupa, si haces algo equivocadamente, puedes &amp;quot;esperar comportamientos inesperados&amp;quot;. Si es algo que pasa conmunmente como pude ver en varios foros, porque no ponen una advertencia a la hora de la instalacion de Visual Studio. No se, hay varias maneras de preveer la situacion, porque lo cierto es que no deberia de ocasionar problemas, es como comprar pan, jamon y mayonesa... en realidad debo comprarlas en un orden para hacer un sandwich?&lt;/p&gt;  &lt;p&gt;Y si fue final feliz porque ya esta funcionando mi IIS.... pero perdi toda la ma&amp;#241;ana... gracias microsoft.&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1456317623832188388?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1456317623832188388/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1456317623832188388' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1456317623832188388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1456317623832188388'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/04/maana-perdida-gracias-microsoft.html' title='¡Mañana perdida, gracias Microsoft!'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6962851202679707211</id><published>2008-04-11T13:04:00.002-05:00</published><updated>2008-04-16T13:42:46.755-05:00</updated><title type='text'>Estamos con los heroes en Veracruz</title><content type='html'>El pasado Martes 8 de abril se realizó el evento de Microsoft "Estamos con los heroes" aquí en Veracruz, el cual tuvo la participación de Rubén Colomo y de Roberto Ramírez, el primero de las filas de Microsoft México y el segundo de Intellekt. Los temas fueron Visual Studio 2008, SQL Server 2008, Windows Server 2008 y Service Pack de Windows Vista.&lt;br /&gt;&lt;br /&gt;En términos generales el curso estuvo bien, Rubén respondía casi todas las preguntas sin dudar, lo cual muestra el amplio conocimiento, me entero por el que BizTalk ya esta en versión 2006 R2 (no lo sabia yo). Y algo importante que estan impulsando en Microsoft es el TechBA administrado por el Fumec. Tendré que darme una vuelta a ver que onda con eso.&lt;br /&gt;&lt;br /&gt;Roberto estuvo presentando VS8 y SQL8, me deja un sabor de que pudo estar mejor, no sé pero la parte de desarrollo no termina de gustarme como la presentan, tal vez sea necesario que traigan a alguien mas clavado, sentí que hubo mas preguntas sin contestar en esta parte.&lt;br /&gt;Roberto se enfocó mucho a la parte de Linq.&lt;br /&gt;¿Que me gusta de Linq?, por supuesto la parte de intellisense en VS8, creas un archivo nuevo ".dbml", le pones la parte de la base de datos arrastrandolo desde el explorador y ya tienes una capa de datos entre tus asp y sql server.&lt;br /&gt;&lt;br /&gt;¿Qué no me gusta?... que solo puedes usar SQL Server... mientras no puedas colocar otro tipo de bases de datos, por lo menos Access o Excel, no creo que se extienda mucho el uso de Linq. Le pregunte a Roberto sobre este detalle y me contestó que no tenian informacion sobre el soporte de otras plataformas. Habra que esperar, no creo que no quieran dar la batalla con Oracle y DB2... etc.&lt;br /&gt;&lt;br /&gt;Después de un buen rato con el asunto de Linq, pasamos a ver la parte de virtualizacion de SQL 2008, estuvo tan buena la platica que me quede con ganas de instalar por lo menos el Virtual PC 2007 en mi laptop. Seguro lo hare.&lt;br /&gt;&lt;br /&gt;Estoy esperando que Ruben libere el contenido de la presentacion de Virtualización para tenerla guardada y en su caso hacer una explicacion a clientes o para lo que se requiera.&lt;br /&gt;&lt;br /&gt;Algo mas que remarco Ruben, a parte de su &lt;a href="http://blogs.technet.com/rubencolomo"&gt;BLOG&lt;/a&gt;!!!, es el asunto de que mandemos historias al sitio de "&lt;a href="http://www.estamosconlosheroes.com/"&gt;Estamos con los heroes&lt;/a&gt;", que puedes ganar diferentes premios. Ya tendre oportunidad de mandar algo sobre lo que hacemos en &lt;a href="http://llanura.com/"&gt;llanura.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Listo!&lt;br /&gt;&lt;br /&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/12602009-6962851202679707211?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6962851202679707211/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6962851202679707211' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6962851202679707211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6962851202679707211'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/04/estamos-con-los-heroes-en-veracruz.html' title='Estamos con los heroes en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3516093294483196008</id><published>2008-04-11T12:55:00.004-05:00</published><updated>2008-04-11T13:03:55.199-05:00</updated><title type='text'>Troubleshooting: Error "alter authorization" en SQL Server</title><content type='html'>He querido crear diagramas en el SQL MSE y he tenido el problema de al momento de crear un diagrama despues de haber instalado una base de datos que proviene de otro lugar o&lt;br /&gt;en su caso mediante un scritp, me aparece un error de permisos con una nota de "alter authorization"&lt;br /&gt;Para resolver el problema se puede ejecutar:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;EXEC sp_dbcmptlevel 'yourDB', '90';&lt;br /&gt;go&lt;br /&gt;ALTER AUTHORIZATION ON DATABASE::yourDB TO "yourLogin"&lt;br /&gt;go&lt;br /&gt;use [yourDB]&lt;br /&gt;go&lt;br /&gt;EXECUTE AS USER = N'dbo' REVERT&lt;br /&gt;go&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3516093294483196008?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3516093294483196008/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3516093294483196008' title='3 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3516093294483196008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3516093294483196008'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/04/troubleshooting-error-alter.html' title='Troubleshooting: Error &quot;alter authorization&quot; en SQL Server'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7503277216257510522</id><published>2008-04-08T13:17:00.002-05:00</published><updated>2008-04-08T13:32:48.070-05:00</updated><title type='text'>Encriptar y Desencriptar de manera sencilla en MS SQL 2005</title><content type='html'>Estoy en pleno desarrollo de una aplicacion que va a estar montada sobre la plataforma de .net. Una de las preocupaciones es la parte de seguridad de las contraseñas, es cierto que las sentencias de SQL que a continuacion se muestran, no son las mas seguras como lei por ahi. Pero es una manera sencilla y rapida de salir, es un mejor que nada.&lt;br /&gt;&lt;br /&gt;Sin mucho rollo pongo el codigo:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;INSERT INTO Users&lt;br /&gt;                    (Id, Username, Password)&lt;br /&gt;VALUES     (20, 'user20', ENCRYPTBYPASSPHRASE('siempremeolvido', 'pass20'))&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Para el caso de obtener la informacion en formato "leíble":&lt;br /&gt;&lt;code&gt;&lt;br /&gt;SELECT     Id, Username, CONVERT(VARCHAR(300), DECRYPTBYPASSPHRASE('siempremeolvido', Password))&lt;br /&gt;FROM         Users&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Para el caso de busqueda por un usuario y contraseña&lt;code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SELECT     Id, Username, Password, Added, Status&lt;br /&gt;FROM         Users&lt;br /&gt;WHERE     (Username='victor')AND(CONVERT(VARCHAR(300), DECRYPTBYPASSPHRASE('siempremeolvido', Password)) = 'pass20')&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7503277216257510522?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7503277216257510522/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7503277216257510522' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7503277216257510522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7503277216257510522'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/04/encriptar-y-desencriptar-de-manera.html' title='Encriptar y Desencriptar de manera sencilla en MS SQL 2005'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-194285449432015865</id><published>2008-01-18T16:54:00.001-06:00</published><updated>2008-01-18T16:54:54.633-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Browsers'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Truco: usar Firefox en el portal IDSE del IMSS</title><content type='html'>&lt;p&gt; El truco es sencillo es usar el &lt;a href="http://addons.mozilla.org"&gt;completemento (Add-On) de Firefox&lt;/a&gt; llamado &lt;strong&gt;&lt;a href="https://addons.mozilla.org/es-ES/firefox/addon/1419"&gt;IE Tab&lt;/a&gt;&lt;/strong&gt;, el cual utiliza el motor de Internet Explorer para cargar las paginas que se visitan con Firefox.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Importante&lt;/strong&gt; es tener una versi&amp;#243;n reciente de Java. En este caso lo mas pr&amp;#225;ctico es visitar &lt;a href="http://www.java.com"&gt;www.java.com&lt;/a&gt;, adem&amp;#225;s de contar con el complemento de Java Policy que se obtiene desde la misma pagina de &lt;a href="http://idse.imss.gob.mx"&gt;http://idse.imss.gob.mx&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="386" alt="Clipboard01" src="http://lh5.google.com/vgarcias/R5EuF9i8fwI/AAAAAAAAADc/9XVPkXDBBKE/Clipboard01%5B7%5D" width="230" border="0" /&gt;&lt;/p&gt;  &lt;p&gt;Empec&amp;#233; a tener problemas queriendo cargar esta pagina despu&amp;#233;s de la instalaci&amp;#243;n de Adobe Flex, pues se estaban ejecutando diferentes m&amp;#225;quinas virtuales de java. Tuve la puntada ejecutar el CCleaner, pensando que se quedaban por ah&amp;#237; los archivos temporales en la carpeta de Internet Explorer, pero no fue hasta que le&amp;#237; el registro de errores de la m&amp;#225;quina que entend&amp;#237; que pasaba. Desgraciadamente se borr&amp;#243; algo mas en esa m&amp;#225;quina y de plano ya no se ejecutan ning&amp;#250;n javascript. Por la fecha y las prisas, decid&amp;#237; moverme a otra computadora, para realizar movimientos en la pagina de IDSE, pero no quer&amp;#237;a mover la configuraci&amp;#243;n de seguridad de la nueva computadora, ya que no soy yo el que la utiliza de manera diaria.&lt;/p&gt;  &lt;p&gt;Instale en un USB, firefox portable, supuse que entrar&amp;#237;a sin problemas con FF. Error!. Resulta que en realidad la pagina del IDSE, maneja unos ActiveX, es asi que requiere a fuerzas el IE. Entr&amp;#233; a Google y en un foro encontr&amp;#233; que existe algunos usuarios usaban navegadores basados en el motor de IE, para entrar.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="243" alt="Clipboard02" src="http://lh4.google.com/vgarcias/R5EuIti8fxI/AAAAAAAAADk/fA3hI6-GQ9M/Clipboard02%5B4%5D" width="431" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;Y record&amp;#233; el IE Tab de firefox. Funciona de maravilla. Lo &amp;#250;nico que se debe hacer es configurar las opciones del complemento las direcciones del imss:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://*imss.gob.mx/"&gt;http://*imss.gob.mx/&lt;/a&gt;*&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/vgarcias/R5EuK9i8fyI/AAAAAAAAADs/KU0WoB6U8LA/Clipboard03%5B3%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="220" alt="Clipboard03" src="http://lh4.google.com/vgarcias/R5EuMti8fzI/AAAAAAAAAD0/fyIGeseOvxg/Clipboard03_thumb%5B1%5D" width="503" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Ahora, cuando se entra al portal, en realidad se esta cargando el motor de IE, pero sin modificar la configuraci&amp;#243;n de esa computadora y desde un USB. ;)&lt;/p&gt;  &lt;p&gt;Aparece el icono de Internet Explorer de la siguiente manera en la barra de direcciones:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.google.com/vgarcias/R5EuONi8f0I/AAAAAAAAAD8/sT3oGJ90jJE/Clipboard04%5B3%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="88" alt="Clipboard04" src="http://lh3.google.com/vgarcias/R5EuPdi8f1I/AAAAAAAAAEE/c_DVT5-D7J0/Clipboard04_thumb%5B1%5D" width="385" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-194285449432015865?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/194285449432015865/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=194285449432015865' title='18 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/194285449432015865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/194285449432015865'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2008/01/truco-usar-firefox-en-el-portal-idse.html' title='Truco: usar Firefox en el portal IDSE del IMSS'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1770217005325611683</id><published>2007-12-21T21:38:00.000-06:00</published><updated>2007-12-21T21:47:08.920-06:00</updated><title type='text'>Lista de 10 noticias .Net (nov-dic 2007)</title><content type='html'>&lt;p&gt;Tuve la intención de poner este post para principios de Enero, pero dado que es posible que no este en condiciones de escribir además de estar asistiendo a un curso de Java en la universidad veracruzana, creo que será mejor que lo haga antes, además, parece que el frenesí de la comunidad desarrolladora se detuvo un poco con la llegada de las festividades navideñas.&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;.Net 3.5&lt;/strong&gt;. Obviamente la primera noticia fue la llegada de .Net 3.5 hace algunas semanas, se acabaron los betas y los CTPs. Tiene muchos funcionalidades nuevas y existen un buen de sitios para comenzar desde obtener la nueva versión hasta documentación del mismo.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://msdn2.microsoft.com/en-us/netframework/default.aspx" href="http://msdn2.microsoft.com/en-us/netframework/default.aspx"&gt;http://msdn2.microsoft.com/en-us/netframework/default.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Visual Studio 2008&lt;/strong&gt;. Aun cuando no esta a la venta, ya se puede obtener un versión de esta IDE, mediante alguna suscripción a MSDN o en su caso pirata, seamos honestos esta por doquier la descarga, lo ultimo no lo entiendo, pues existe la versión Express y nos mantenemos en un entorno legal.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://www.microsoft.com/spanish/msdn/latam/vstudio" href="http://www.microsoft.com/spanish/msdn/latam/vstudio"&gt;http://www.microsoft.com/spanish/msdn/latam/vstudio&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;ASP .Net MVC CTP&lt;/strong&gt;. Nos llega la primera versión de MVC para ASP .Net desde Redmond, siguiendo los ejemplos de Rails, Struts, etc., Microsoft nos da esta herramienta para olvidarse de la documentación a la hora de realizar un proyecto y realizar programación ágil, ya era hora.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://mvccontrib.org/" href="http://mvccontrib.org/"&gt;http://mvccontrib.org/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;IIS7&lt;/strong&gt;. Para los dichosos que tiene un buen servidor con Windows 2003R2 ya pueden obtener su actualización a la nueva versión del cada vez mas popular servidor web de Microsoft. Una de las características principales es la parte modular del servidor.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://www.iis.net/default.aspx" href="http://www.iis.net/default.aspx"&gt;http://www.iis.net/default.aspx&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Mono 1.2.6&lt;/strong&gt;. Siguiendo el camino de .Net, Mono actualizó la defunción de las clases de .Net 3.5 y aunque no están todavía disponibles para usar en mono, por lo menos se presentan los errores correspondientes.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.go-mono.com"&gt;http://www.go-mono.com&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;Expression Blend 2. Si crees que .Net 3.5 es solo C#, con esta herramienta vemos realmente el potencial del nuevo .Net y liberada la version Free Preview Trial&amp;nbsp; (What!), para seguir haciendo experimentos en Silverlight (quien va a pagar en estos momentos una aplicación de este tipo?).&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://www.microsoft.com/expression/products/download.aspx?key=blend2preview" href="http://www.microsoft.com/expression/products/download.aspx?key=blend2preview"&gt;http://www.microsoft.com/expression/products/download.aspx?key=blend2preview&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;YUI 2.4.1.&lt;/strong&gt; Tal vez esta librería no debería ser clasificada dentro de .Net, pero considero que esta nueva versión resuelve varios bugs y por otro lado se puede agregar de manera muy sencilla en cualquier desarrollo de .Net.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://developer.yahoo.com"&gt;http://developer.yahoo.com&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;FastCGI. Al igual que la anterior, FastCGI tal vez no se deberia incluir dentro de .Net, pero considerando Phalanger (php en .net) y el nuevo IIS. FastCGI viene a ser ese puente entre los dos anteriores.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://www.iis.net/php/" href="http://www.iis.net/php/"&gt;http://www.iis.net/php/&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://php-compiler.net/" href="http://php-compiler.net/"&gt;http://php-compiler.net/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;SQL Server 2008&lt;/strong&gt;. Este sí, es muy importante para .Net, asi como existe LAMP... aqui es WISSN.. ;)&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://msdn2.microsoft.com/sql/" href="http://msdn2.microsoft.com/sql/"&gt;http://msdn2.microsoft.com/sql/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Visual Studio Add-On de WorldCrat&lt;/strong&gt;. La vida es un juego, y si eres apasionado de WorldCraft. Listo crea un mod y convierte en millonario.&lt;/li&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a title="http://www.codeplex.com/WarcraftAddOnStudio" href="http://www.codeplex.com/WarcraftAddOnStudio"&gt;http://www.codeplex.com/WarcraftAddOnStudio&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1770217005325611683?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1770217005325611683/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1770217005325611683' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1770217005325611683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1770217005325611683'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/12/lista-de-10-noticias-net-nov-dic-2007.html' title='Lista de 10 noticias .Net (nov-dic 2007)'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8243712051191460307</id><published>2007-11-30T20:04:00.001-06:00</published><updated>2007-11-30T20:04:33.911-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Soluciones'/><title type='text'>Certificación Java</title><content type='html'>&lt;p&gt;Preparándome para la certificación Java tratare de ir poniendo los ejercicios que van realizándose dentro del curso. &lt;/p&gt; &lt;p&gt;Problema:&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; TestVehicle {&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; main(String[] args) {&lt;br /&gt;&lt;br /&gt;    &lt;span class="rem"&gt;// Create a vehicle that can handle 10,000 kilograms weight&lt;/span&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Creating a vehicle with a 10,000kg maximum load."&lt;/span&gt;);&lt;br /&gt;    Vehicle vehicle = &lt;span class="kwrd"&gt;new&lt;/span&gt; Vehicle(10000.0);&lt;br /&gt;&lt;br /&gt;    &lt;span class="rem"&gt;// Add a few boxes&lt;/span&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Add box #1 (500kg)"&lt;/span&gt;);&lt;br /&gt;    vehicle.load = vehicle.load + 500.0;&lt;br /&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Add box #2 (250kg)"&lt;/span&gt;);&lt;br /&gt;    vehicle.load = vehicle.load + 250.0;&lt;br /&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Add box #3 (5000kg)"&lt;/span&gt;);&lt;br /&gt;    vehicle.load = vehicle.load + 5000.0;&lt;br /&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Add box #4 (4000kg)"&lt;/span&gt;);&lt;br /&gt;    vehicle.load = vehicle.load + 4000.0;&lt;br /&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Add box #5 (300kg)"&lt;/span&gt;);&lt;br /&gt;    vehicle.load = vehicle.load + 300.0;&lt;br /&gt;&lt;br /&gt;    &lt;span class="rem"&gt;// Print out the final vehicle load&lt;/span&gt;&lt;br /&gt;    System.&lt;span class="kwrd"&gt;out&lt;/span&gt;.println(&lt;span class="str"&gt;"Vehicle load is "&lt;/span&gt; + vehicle.getLoad() + &lt;span class="str"&gt;" kg"&lt;/span&gt;);&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Solución:&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; Vehicle {&lt;br /&gt;&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;double&lt;/span&gt; load,maxLoad;&lt;br /&gt;&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; Vehicle(&lt;span class="kwrd"&gt;double&lt;/span&gt; maxLoad) {&lt;br /&gt;&lt;br /&gt;     &lt;span class="kwrd"&gt;this&lt;/span&gt;.maxLoad=maxLoad;&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;double&lt;/span&gt; getLoad() {&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;.load;&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;double&lt;/span&gt; getMaxload() {&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;.maxLoad;&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;pre class="csharpcode"&gt;Listo!&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8243712051191460307?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8243712051191460307/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8243712051191460307' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8243712051191460307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8243712051191460307'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/certificacin-java.html' title='Certificación Java'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5944550217358831714</id><published>2007-11-30T19:15:00.001-06:00</published><updated>2007-11-30T19:15:21.274-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Live'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Live'/><title type='text'>Notas del Tour Tecnológico de Microsoft en Veracruz</title><content type='html'>&lt;p&gt;Ayer se realizó en el puerto de Veracruz el evento &lt;a href="http://www.mslatam.com/spanish/msdn/mexico/tour2007/"&gt;Tour Tecnológico 2007 de MSDN&lt;/a&gt; .&lt;/p&gt; &lt;p&gt;De entrada &lt;a href="http://blogs.msdn.com/jaimesb/"&gt;Jaime Sánchez&lt;/a&gt; de Microsoft platico sobre las aplicaciones disponibles de Live.com, dio una breve explicación sobre Writer, Messenger, Mail, Galería Fotográfica, Control Parental, etc. Lo cual no fue muy novedoso, pero en el marco del evento estuvo bien, aprendí que se pueden hacer fotos panorámicas, un punto mas para instalar esta aplicación.&lt;/p&gt; &lt;p&gt;Afirmo que los resultado de las búsquedas de live.com son mejores que en Google, comentando que se mejoraron los servicios de indexación y la interfaz para leer los resultados. Obviamente ya estuve haciendo algunas pruebas, y debo decir que sí, efectivamente ha mejorado bastante, lo pondré de regreso a mi barra de Firefox. Algo interesante es que pusieron la información de encarta como una de las fuentes principales.&lt;/p&gt; &lt;p&gt;No importa que persona sea, de que empresa venga, que lenguaje ocupe, si se trata de algún desarrollador, siempre, siempre, el Visual Notepad es indispensable, no será momento de mejorar estar herramienta en Windows?. Efectivamente Jaime lo usó para explicar que la generación de archivos de Office 2007, basados en XML se pueden realizar dentro del mismo .Net mediante &lt;/p&gt;&lt;pre class="csharpcode"&gt;system.xml;&lt;br /&gt;system.package;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;Usando un convertidor del lado de cliente, se puede evitar los problemas de licenciamiento. Por cierto que fui el que levantó la mano para responder a la pregunta de como generar archivos de xml desde un servidor. Y claro es mediante los mime types dentro de un asp o asp.net. Dijo que el inconveniente de realizar esto de esta forma es el asunto de las licencias, aquí entre nos nunca me he puesto a investigar este asunto, asi que en los desarrollos que tuve que generar archivos de Excel, mmm... no se tienen licencia alguna. No se si reírme o preocuparme.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Menciono que existe mucha información en su blog sobre Visual Studio Team, como buen nerd que soy, ya la he revisado en ocasiones anteriores, y no recuerdo haber visto ese post. Tendré que darme una sumergida. Recomendó mucho el &lt;a href="http://blogs.msdn.com/briankel/"&gt;blog de Brian Keller&lt;/a&gt;, ¡Caray tanta información tan poco tiempo!.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Después se paso a UX, ya habiendo visto su &lt;a href="http://blogs.msdn.com/jaimesb/archive/2007/10/31/presentaci-n-de-experiencia-de-usuario.aspx"&gt;presentación del blog,&lt;/a&gt; pues me aburrí. Pero sin embargo la hace divertida. Me pareció un poco comercial de Office 2007 y Windows Vista, entendible. Jaime habló mucho del choque de mundos entre diseñador y desarrollador. Afortunadamente no termino de considerarme un uno ni otro, es posible que yo sea un monstruo. Me preocupa mucho que al rato los clientes quieran tener combos con gráficos y animaciones, de por si es difícil cobrar software, ahora con esto. No vayamos muy lejos, tengo que realizar un sitio web con fondo dorado, pégale duro a la teoría del color y a la usabilidad.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Me gusto mucho la parte en donde comenzó a realizar un pequeño player con Expression Blend, ya me pondré a jugar de nuevo con él, en particular si el fin de semana instalo el VS2008 Express. Ya que no cuento con una MSDN Suscription. Super ejemplo librería británica: &lt;a href="http://ttpdownload.bl.uk/"&gt;http://ttpdownload.bl.uk/&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Ya con Expression Blend me surgió una idea para un juego. Si tengo tiempo le dedicaré unas horas. Ya que no he instalado VS2008 no sabia que no se pueden crear animaciones y transformaciones a los archivos XAML de manera sencilla, es forzoso tener otra herramienta para estos fines.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Durante el receso Jaime se juyó. Y nos dejaron a la de gente de la comunidad .Net Veracruz. Participación de Miguel Ortíz hablando de smart devices. En mis notas solo tengo dibujos. Después Tomas Ortíz, narró una historia de como empezó a trabajar el verano del '98 con visual studio y ahora ya maneja VS2008, bien Tomas. Explico perfectamente que es Net 3.5, me enteré que Rosario es la nueva versión después de Orcas. Puso un ejemplo sencillo pero cool de LINQ y C#.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Hice mi pregunta acerca de la creación de propiedades de una clase orientada a lenguaje VB, pero no sabia... tengo que investigar.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Fin de la sesión de la mañana.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Tarde con &lt;a href="http://blogs.technet.com/rubencolomo"&gt;Rubén Colomo,&lt;/a&gt; al igual que con Jaime Sanchez, he leído su blog. Me cae que soy nerd. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Forefront seguridad para empresas grandes, muy interesante el tema pero honestamente no creo que vaya a utilizar pronto esta solución, sigo pensando que la seguridad es importante, pero no tanto para los jefes como lo son reportes que muestren los gastos o las perdidas de algún departamento de la empresa, por poner un ejemplo. Por mi encantado de poner un solucion asi, pero difícilmente tengo clientes que puedan costearse una solución de este tipo. A lo mas se llega&amp;nbsp; un Active Directory con algunas políticas. Me impacto que usara 5 máquinas virtuales en una laptop de 2 procesadores y solo con 2Gb de memoria, quien lo hubiera pensado. Eso, si cuando instaló el bonito IIS7, no terminaba y no terminaba.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Términos nuevos para mi sobre seguridad:&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Seguridad Básica. Una instalación de Windows 2008 por omisión usando Active Directory&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Seguridad Racionalizada. Agregar políticas a Active Directory&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Seguridad de Monitoreo. Monitorear los servicios de seguridad.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Seguridad Dinamica. Automatizar las tareas de seguridad.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;Tal como lo plantea Rubén.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;IIS 7 modular con FastCGI, y solo para windows 2008... :S&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Finalmente varios vídeos sobre los servicios de Office Communications, combinando Telefonía, Video, Correo electrónico, Mensajería, etc. Sueña México, sueña.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Lo malo del evento:&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;La poca participación de la gente de aquí del puerto, no se si es apatía, o desconocimiento.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;No se habló de MVC.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Que no me dejaron sabritas.. :S&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Lo bueno del evento:&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Que vino gente que esta en un buen nivel de Microsoft, y que se interesa porque la gente de México haga desarrollo, solo leer sus blogs.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Los regalos de CDC... un aplauso.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Que nos deja soñando lo que se puede realizar, siempre y cuando existieran mejores conexiones de Internet. Algún día RoundTable (Y).&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5944550217358831714?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5944550217358831714/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5944550217358831714' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5944550217358831714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5944550217358831714'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/notas-del-tour-tecnolgico-de-microsoft.html' title='Notas del Tour Tecnológico de Microsoft en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1431587300355411392</id><published>2007-11-20T15:15:00.001-06:00</published><updated>2007-11-20T15:15:26.360-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><title type='text'>Tip: Cambiando CakePHP para la flexión de palabras irregulares.</title><content type='html'>&lt;p&gt;En esta ocasión veremos una sencilla forma de realizar una &lt;a href="http://es.wikipedia.org/wiki/Flexi%C3%B3n_gramatical"&gt;flexión gramatical&lt;/a&gt; dentro de CakePHP para lograr que nuestra estructura mantenga una correcta descripción de los elementos de nuestras entidades dentro de una aplicación.&lt;/p&gt; &lt;p&gt;CakePHP es un marco de desarrollo para aplicaciones de creación ágiles, basado en los patrones de MVC (Modelos, Vistas y Controles). CakePHP toma el esquema de una base de datos y crea los objetos MVC, con lo cual se tiene de manera muy sencilla una aplicación, que cierto no cumple con todos los requerimiento de la aplicación, por otra parte desahoga la manipulación sencilla y directa de la base de datos.&lt;/p&gt; &lt;p&gt;Para esto es muy importante considerar ciertas recomendaciones &lt;strong&gt;gramaticales&lt;/strong&gt; al momento de generar nuestro esquema de base de datos:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;La tabla es un conjunto de registros, por lo cual si estamos guardando direcciones, la tabla deberá llamarse asi: "direcciones"  &lt;li&gt;La llave primaria debiera ser entonces llamada de forma singular y con un sufijo de "_id", para el caso: "direccion_id"  &lt;li&gt;El primer campo deberá ser "direccion" y a continuacion los campo restantes.  &lt;li&gt;Si queremos incluir una llave primaria externa, entonces deberemos llamarla con el sufijo "_id", para nuestro caso "provincias_id".&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;&lt;em&gt;&lt;strong&gt;¿Qué pasa cuando tratamos de crear nuestro MVC?&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;CakePHP como varios marcos de desarrollo, basan la creación en lo anterior mencionado, y uno de los problemas es singularizar las palabras irregulares, para nuestro caso esto se puede ilustrar:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Modelo: direccione.php  &lt;li&gt;Controlador: direcciones_controller.php  &lt;li&gt;Vista: direccione.html&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Por omision CakePHP considera las "s" como el plural de nuestro campo. Para nuestro ejemplo, el problema reside en el uso de "direccione", el cual no corresponde a una ortografía correcta. Una alternativa para solucionar esto es colocar "direccions" en lugar de "direcciones", pero esto de ninguna manera se ve atractivo. Y provoca problemas secundarios en el manejo de las aplicaciones.&lt;/p&gt; &lt;p&gt;La respuesta se encuentra en el archivo de configuración de "inflections.php", en él se pueden realizar diferentes modificaciones, que permitirán colocar un par de palabras para estos casos:&lt;/p&gt; &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt; *  $irregularPlural = array(&lt;span class="str"&gt;'atlas'&lt;/span&gt; =&amp;gt; &lt;span class="str"&gt;'atlases'&lt;/span&gt;, &lt;span class="str"&gt;'beef'&lt;/span&gt; =&amp;gt; &lt;span class="str"&gt;'beefs'&lt;/span&gt;, &lt;span class="str"&gt;'brother'&lt;/span&gt; =&amp;gt; &lt;span class="str"&gt;'brothers'&lt;/span&gt;)&lt;/pre&gt;&lt;pre&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;$irregularPlural = array(&lt;span class="str"&gt;'direccion'&lt;/span&gt; =&amp;gt; &lt;span class="str"&gt;'direcciones'&lt;/span&gt;, &lt;span class="str"&gt;'pais'&lt;/span&gt; =&amp;gt; &lt;span class="str"&gt;'paises'&lt;/span&gt;);&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Al volver a crear nuestro MVC con CakePHP, la estructura quedara:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Modelo: direccion.php&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Controlador: direcciones_controller.php&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Vista: direccion.html&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1431587300355411392?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1431587300355411392/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1431587300355411392' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1431587300355411392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1431587300355411392'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/tip-cambiando-cakephp-para-la-flexin-de.html' title='Tip: Cambiando CakePHP para la flexión de palabras irregulares.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-284453222090080882</id><published>2007-11-20T13:26:00.001-06:00</published><updated>2007-11-20T13:27:28.605-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Noticias'/><title type='text'>Tienda en línea de Apple México</title><content type='html'>&lt;p&gt;Por fin abren la tienda de Apple en México, ahora si a pedir los regalos favoritos de Mac. Ya podremos grabar nuestros iPods sin costo adicional. Los precios no son tan atractivos, pero supongo que es la antesala a lo que sera la venta de los iPhone.&lt;/p&gt; &lt;p&gt;De todos modos, uno de los principales atractivos es la MacBook Pro, que fue considerada la mejor laptop para ejecutar Windows Vista.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.apple.com/mexicostore/"&gt;http://www.apple.com/mexicostore/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-284453222090080882?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/284453222090080882/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=284453222090080882' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/284453222090080882'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/284453222090080882'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/tienda-en-lnea-de-apple-mxico.html' title='Tienda en línea de Apple México'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5535244917209184297</id><published>2007-11-19T16:43:00.001-06:00</published><updated>2007-11-19T16:43:36.719-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Lanzamiento de Visual Studio 2008 gratuita</title><content type='html'>&lt;p&gt;Con el lanzamiento de Visual Studio 2008 RTM para descargar mediante una suscripción MSD, también se acaba de liberar la versión Express Edition, la cual se puede obtener de forma gratuita:&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.microsoft.com/express/download/" href="http://www.microsoft.com/express/download/"&gt;http://www.microsoft.com/express/download/&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/12602009-5535244917209184297?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5535244917209184297/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5535244917209184297' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5535244917209184297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5535244917209184297'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/lanzamiento-de-visual-studio-2008.html' title='Lanzamiento de Visual Studio 2008 gratuita'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8075930716356319069</id><published>2007-11-16T15:06:00.001-06:00</published><updated>2007-11-16T15:06:02.366-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows Live'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='Browsers'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Live'/><title type='text'>Aplicaciones Windows Live</title><content type='html'>&lt;p&gt;Estoy escribiendo desde la versión liberada de Windows Live Writer, funciona maravilloso. Puedo escribir a varios de los blogs que tengo por ahí y lo mas importante he usado esta herramienta como un complemento para aquellos clientes que han decidido usar WordPress como la plataforma para manejar su sitio Web.&lt;/p&gt; &lt;p&gt;(No es por nada pero la ventana de dialogo para la actualización al blog remoto, ha logrado apantallar, se que es una simpleza, pero por increíble que parezca la gente lo ve mágico.... shhh!).&lt;/p&gt; &lt;p&gt;Obtuve la nueva versión desde el &lt;a href="http://writer.live.com/"&gt;sitio de descarga&lt;/a&gt;, me topé que en realidad lo que baje es el instalador de aplicaciones Live.&amp;nbsp; ¿Qué quiere decir esto?, Bueno, pues, resulta que con el mismo instalador puedo actualizar o agregar varias aplicaciones que están saliendo del entorno Live:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Live Messenger, quien no conoce messenger?&lt;/li&gt; &lt;li&gt;Live Mail, la evolución de Outlook Express&lt;/li&gt; &lt;li&gt;Live Toolbar, la competencia del google toolbar.&lt;/li&gt; &lt;li&gt;Live Photo Gallery, la versión release de Windows Max ;)&lt;/li&gt; &lt;li&gt;Live OneCare Child Protection, para la protección de menores.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Todo esto en un solo instalador, y gratuito (siempre y cuando tu máquina tenga windows xp o vista... :|)&lt;/p&gt; &lt;p&gt;Son un puñado de aplicaciones que en especial complementan a Windows XP, pues creo que algunas de ellas, de alguna manera ya están incluidas en Windows Vista.&lt;/p&gt; &lt;p&gt;Esta versión de Live Writer, me permite revisar la ortografía de una manera muy sencilla y en español, :D. Creo que en definitiva nunca mas usaré Word... solo necesito algo que reemplace a Excel... :D.&lt;/p&gt; &lt;p&gt;La otra herramienta que me interesó, es Photo Gallery esperaba que fuera igual o mas parecido a Windows Max, pero la herramienta es bastante rapida para el control de las fotos, y ademas permite etiquetarlas y documentarlas. Vale la pena.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8075930716356319069?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8075930716356319069/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8075930716356319069' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8075930716356319069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8075930716356319069'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/aplicaciones-windows-live.html' title='Aplicaciones Windows Live'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-9194884624365797917</id><published>2007-11-16T14:26:00.001-06:00</published><updated>2007-11-16T14:26:21.168-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><category scheme='http://www.blogger.com/atom/ns#' term='Browsers'/><title type='text'>¿Cómo editar diccionario de Firefox?</title><content type='html'>&lt;p&gt;Firefox cuenta con un add-on que permite revisar la ortografía del texto que se vaya colocando en los campos de textos dentro de las paginas o ventanas del navegador. Lo cual es muy practico, ya que usualmente no pongo acentos cuando escribo. Ya sea con papel y lápiz o con el teclado, me gusta comerme los acentos.&lt;/p&gt; &lt;p&gt;Uno de los problemas que he encontrado con el add-on es cuando escribo alguna palabra que ingresé mediante la opción de "Agregar al diccionario",&amp;nbsp; la palabra la pone tal como se había agregado, es decir en minúsculas, en mayúsculas o como un titulo. Lo cual hace que tenga que en ocasiones rescribir la palabra.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/CmoeditardiccionariodeFirefox_BD22/ffaddondic.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="198" alt="ffaddondic" src="http://www.llanura.com/imagenes/CmoeditardiccionariodeFirefox_BD22/ffaddondic_thumb.jpg" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Creo que el add-on debería tener esta funcionalidad, pero... no me voy a poner a hacerlo... espero que alguna nueva versión lo haga en el futuro.&lt;/p&gt; &lt;p&gt;Me es más sencillo colocar la palabra en el archivo que guarda las palabras del diccionario personal, el cual se encuentra en una de las carpetas de windows:&lt;/p&gt;&lt;pre class="csharpcode"&gt;C:\Documents and Settings\vgarcia\Datos de programa\Mozilla\Firefox\Profiles\7emcp7xs.default&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;el archivo es&amp;nbsp; "persdict.dat"&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Se abre el archivo en un editor de textos y se agrega las palabras correspondientes.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Se guarda y reiniciar Firefox. El resultado es:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/CmoeditardiccionariodeFirefox_BD22/ffaddondic2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="185" alt="ffaddondic2" src="http://www.llanura.com/imagenes/CmoeditardiccionariodeFirefox_BD22/ffaddondic2_thumb.jpg" width="209" border="0"&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-9194884624365797917?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/9194884624365797917/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=9194884624365797917' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9194884624365797917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/9194884624365797917'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/cmo-editar-diccionario-de-firefox.html' title='¿Cómo editar diccionario de Firefox?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3956378275008929836</id><published>2007-11-09T23:52:00.001-06:00</published><updated>2007-11-09T23:52:36.431-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eHealth'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Live'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Windows LiveID Authentication</title><content type='html'>&lt;p&gt; &lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt; Leo en el blog de Luis Daniel Soto que ya se libero la version de Windows LiveID Authentication, yo estuve haciendo pruebas, pedi mi AppKey y toda la cosa, pero resulta que lo unico que te manda es un token de 16 digitos o algo asi y listo. &lt;/p&gt; &lt;p&gt;En un principio pensé que con este servicio, me olvidaria de crear un registro para EM, o mejor dicho, quitaria esa parte, ya que no estoy usando Membership, pense que seria codigo que limpiaria la aplicacion, pero honestamente ni siquiera me manda el nombre y apellido de la persona de regreso.&lt;/p&gt; &lt;p&gt;Y estuve leyendo documentacion y curiosamente el webservice me puede mandar de regreso sus contactos, pero no su informacion, no me agradaria poner en la aplicacion "Hola 124128374128, bienvenido a nuestro sitio"... :S&lt;/p&gt; &lt;p&gt;Le dare una revisada por segunda ocasion para ver si puedo rescatar algo de este servicio para la aplicacion.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3956378275008929836?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3956378275008929836/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3956378275008929836' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3956378275008929836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3956378275008929836'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/windows-liveid-authentication.html' title='Windows LiveID Authentication'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-94444624656580905</id><published>2007-11-09T23:44:00.001-06:00</published><updated>2007-11-09T23:44:03.984-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='eHealth'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><category scheme='http://www.blogger.com/atom/ns#' term='MS CUI'/><title type='text'>Ejemplo de uso de los controles MS CUI</title><content type='html'>&lt;p&gt;Aqui va un poco de código de la aplicacion que actualmente estoy haciendo, en la cual estoy incorporando los controles de &lt;a href="http://www.mscui.com"&gt;MS CUI&lt;/a&gt;, usando como base de datos MySQL y no XML como el ejemplo que trae la documentación.&lt;/p&gt;&lt;pre class="csharpcode"&gt;    &lt;span class="kwrd"&gt;Protected&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt; Page_Load(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; sender &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Object&lt;/span&gt;, &lt;span class="kwrd"&gt;ByVal&lt;/span&gt; e &lt;span class="kwrd"&gt;As&lt;/span&gt; System.EventArgs)&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; intIDMedico &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Integer&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; intIDPaciente &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Integer&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; odsPacientes &lt;span class="kwrd"&gt;As&lt;/span&gt; Data.DataSet&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; odsDireccion &lt;span class="kwrd"&gt;As&lt;/span&gt; Data.DataSet&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; dsPacientes &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; Pacientes&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; dsDireccion &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; Direcciones&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; opcionGenero &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; &lt;span class="kwrd"&gt;Not&lt;/span&gt; Request.Cookies(&lt;span class="str"&gt;"IDMedico"&lt;/span&gt;) &lt;span class="kwrd"&gt;Is&lt;/span&gt; &lt;span class="kwrd"&gt;Nothing&lt;/span&gt; &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;            intIDMedico = Server.HtmlEncode(Request.Cookies(&lt;span class="str"&gt;"IDMedico"&lt;/span&gt;).Value)&lt;br /&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; &lt;span class="kwrd"&gt;Not&lt;/span&gt; Request.QueryString(&lt;span class="str"&gt;"ID"&lt;/span&gt;) &lt;span class="kwrd"&gt;Is&lt;/span&gt; &lt;span class="kwrd"&gt;Nothing&lt;/span&gt; &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;            intIDPaciente = Request.QueryString(&lt;span class="str"&gt;"ID"&lt;/span&gt;)&lt;br /&gt;            Response.Cookies(&lt;span class="str"&gt;"IDPaciente"&lt;/span&gt;).Value = intIDPaciente&lt;br /&gt;        &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;If&lt;/span&gt; &lt;span class="kwrd"&gt;Not&lt;/span&gt; Request.Cookies(&lt;span class="str"&gt;"IDPaciente"&lt;/span&gt;) &lt;span class="kwrd"&gt;Is&lt;/span&gt; &lt;span class="kwrd"&gt;Nothing&lt;/span&gt; &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;                intIDPaciente = Server.HtmlEncode(Request.Cookies(&lt;span class="str"&gt;"IDPaciente"&lt;/span&gt;).Value)&lt;br /&gt;            &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        odsAntecedentes.SelectParameters(&lt;span class="str"&gt;"intIDPaciente"&lt;/span&gt;).DefaultValue = intIDPaciente&lt;br /&gt;        odsPacientes = dsPacientes.obtenerPorIDPaciente(intIDPaciente)&lt;br /&gt;        &lt;br /&gt;        &lt;span class="rem"&gt;'Llenar datos del paciente&lt;/span&gt;&lt;br /&gt;        opcionGenero = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Genero"&lt;/span&gt;).ToString&lt;br /&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; opcionGenero = &lt;span class="str"&gt;"F"&lt;/span&gt; &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;            PatientBanner1.Gender = NhsCui.Toolkit.PatientGender.Female&lt;br /&gt;            PatientBanner1.PatientImage = &lt;span class="str"&gt;"/images/generic-female.gif"&lt;/span&gt;&lt;br /&gt;            ImageButtonModificar.ImageUrl = &lt;span class="str"&gt;"~/images/pacientes/modificarPacientesFem.gif"&lt;/span&gt;&lt;br /&gt;            &lt;br /&gt;        &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;br /&gt;            PatientBanner1.Gender = NhsCui.Toolkit.PatientGender.Male&lt;br /&gt;            PatientBanner1.PatientImage = &lt;span class="str"&gt;"/images/generic-male.gif"&lt;/span&gt;&lt;br /&gt;            ImageButtonModificar.ImageUrl = &lt;span class="str"&gt;"~/images/pacientes/modificarPacientesMas.gif"&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;If&lt;/span&gt; &lt;span class="kwrd"&gt;Not&lt;/span&gt; IsDBNull(odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Foto"&lt;/span&gt;)) &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;            PatientBanner1.PatientImage = &lt;span class="str"&gt;"/images/pacientes/"&lt;/span&gt; &amp;amp; odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Foto"&lt;/span&gt;)&lt;br /&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;        PatientBanner1.GivenName = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Nombre"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.FamilyName = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"ApellidoPaterno"&lt;/span&gt;).ToString &amp;amp; &lt;span class="str"&gt;" "&lt;/span&gt; &amp;amp; odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"ApellidoMaterno"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.DateOfBirth = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"FechaNacimiento"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.Identifier = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"NumeroIdentificacion"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.Title = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Titulo"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.MobilePhoneNumber = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"TelefonoCelular"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.WorkPhoneNumber = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Telefono2"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.HomePhoneNumber = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Telefono"&lt;/span&gt;).ToString&lt;br /&gt;        PatientBanner1.EmailAddress = odsPacientes.Tables(0).Rows(0).Item(&lt;span class="str"&gt;"Email"&lt;/span&gt;).ToString&lt;br /&gt;       &lt;br /&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Sub&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp;La verdad es que el control trabaja relindo (dirian los Args), tengo un par de archivos que estan haciendo las conexiones a MySQL mediante objetos. Todo esto con VB, y no en C# como todo el mundo:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; Microsoft.VisualBasic&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Web&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Collections.Generic&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.ComponentModel&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Web.Services&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Web.Services.Protocols&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Data&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; MySql.Data.MySqlClient&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Configuration&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Class&lt;/span&gt; Pacientes&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;Imports&lt;/span&gt; System.Data.SqlClient&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;Public&lt;/span&gt; &lt;span class="kwrd"&gt;Function&lt;/span&gt; obtenerPorIDPaciente(&lt;span class="kwrd"&gt;ByVal&lt;/span&gt; IDPaciente &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Integer&lt;/span&gt;) &lt;span class="kwrd"&gt;As&lt;/span&gt; DataSet&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; conn &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; MySqlConnection&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; myCommand &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; MySqlCommand&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; myAdapter &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; MySqlDataAdapter&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; myData &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;New&lt;/span&gt; DataSet&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; SQL &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;String&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Dim&lt;/span&gt; opcion &lt;span class="kwrd"&gt;As&lt;/span&gt; &lt;span class="kwrd"&gt;Boolean&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        SQL = &lt;span class="str"&gt;"SELECT * FROM pacientes WHERE IDPaciente="&lt;/span&gt; &amp;amp; IDPaciente.ToString&lt;br /&gt;        conn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings(&lt;span class="str"&gt;"emConnectionString"&lt;/span&gt;).ConnectionString&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;br /&gt;            conn.Open()&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;br /&gt;                myCommand.Connection = conn&lt;br /&gt;                myCommand.CommandText = SQL&lt;br /&gt;&lt;br /&gt;                myAdapter.SelectCommand = myCommand&lt;br /&gt;                myAdapter.Fill(myData)&lt;br /&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;If&lt;/span&gt; (myData &lt;span class="kwrd"&gt;Is&lt;/span&gt; DBNull.Value) &lt;span class="kwrd"&gt;Then&lt;/span&gt;&lt;br /&gt;                    opcion = &lt;span class="kwrd"&gt;True&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;Else&lt;/span&gt;&lt;br /&gt;                    opcion = &lt;span class="kwrd"&gt;False&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;If&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;Catch&lt;/span&gt; myerror &lt;span class="kwrd"&gt;As&lt;/span&gt; MySqlException&lt;br /&gt;                &lt;span class="rem"&gt;'Response.Write("There was an error reading from the database: " &amp;amp; myerror.Message)&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Catch&lt;/span&gt; myerror &lt;span class="kwrd"&gt;As&lt;/span&gt; MySqlException&lt;br /&gt;            &lt;span class="rem"&gt;'Response.Write("Error connecting to the database: " &amp;amp; myerror.Message)&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Finally&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;'If conn.State &amp;lt;&amp;gt; ConnectionState.Closed Then&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;'End If&lt;/span&gt;&lt;br /&gt;            conn.Close()&lt;br /&gt;        &lt;span class="kwrd"&gt;End&lt;/span&gt; &lt;span class="kwrd"&gt;Try&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;Return&lt;/span&gt; myData&lt;br /&gt;    &lt;span class="kwrd"&gt;End&lt;/span&gt; FunctionPublic &lt;span class="kwrd"&gt;Class&lt;/span&gt; Pacientes&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;End&lt;/span&gt; Class&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;La pantalla se ve de lujo (eso digo yo):&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/EjemplodeusodeloscontrolesMSCUI_1126E/expediaMedicusDatosGeneralesdelPaciente.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="364" alt="expediaMedicus - Datos Generales del Paciente" src="http://www.llanura.com/imagenes/EjemplodeusodeloscontrolesMSCUI_1126E/expediaMedicusDatosGeneralesdelPaciente_thumb.png" width="640" border="0"&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/12602009-94444624656580905?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/94444624656580905/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=94444624656580905' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/94444624656580905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/94444624656580905'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/ejemplo-de-uso-de-los-controles-ms-cui.html' title='Ejemplo de uso de los controles MS CUI'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4008657778157463559</id><published>2007-11-09T23:29:00.001-06:00</published><updated>2007-11-09T23:29:18.940-06:00</updated><title type='text'>Health Vault SDK no en primera version.</title><content type='html'>&lt;p&gt;Tiene como un mes que esta disponible el SDK de Health Vault de Microsoft, enseguida lo descargue de su sitio y empece a jugar con él.&lt;/p&gt; &lt;p&gt;En principio pense que me seria de mucha ayuda para la aplicacion de expedientes medicos que estoy realizando, y que en un par de ocasiones he comentado en este blog. El problema ha sido la poca documentacion que existe en cuanto a su uso, no veo mucha interaccion en el foro, casi olvidado al igual que la parte de MS CUI, que al principio vi que mucha gente lo descargo de codeplex, pero se ha ido quedando resagado.&lt;/p&gt; &lt;p&gt;Regresando a Health Vault, uno de los problemas que he visto ha sido que por lo pronto no es internacional, ojalá y sea pronto el hecho que se pueda utilizar en cualquier parte del mundo. Lo bueno es que me ha obligado a desarrollar una aplicacion pensando en el mercado de EEUU. Lo cual no habia contemplado.&lt;/p&gt; &lt;p&gt;Me sigo retirando del tema, total que he tenido algo de problemas en integrar lo que ya tenia de ExpediaMedicus con el Health Vault, en especial el asunto de las clases que trae el SDK, pues tiene mas metodos y propiedades de lo que yo habia diseñado en EM. Sobretodo que se basa mucho en usar XML para estar llenar los datos.&lt;/p&gt; &lt;p&gt;Quisiera ver una version terminada pronto de ExpediaMedicus, por lo que no podré integrar este SDK. Espero que en una futura version y&amp;nbsp;conun poco de madurez de HealthVault en la parte de internalizacion la pueda integrar.&lt;/p&gt; &lt;p&gt;Pronto saldra la version de Google Health, la competencia. Sera mejor o peor?&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4008657778157463559?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4008657778157463559/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4008657778157463559' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4008657778157463559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4008657778157463559'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/health-vault-sdk-no-en-primera-version.html' title='Health Vault SDK no en primera version.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8659284567924336025</id><published>2007-11-09T22:45:00.001-06:00</published><updated>2007-11-09T22:45:00.964-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Software'/><title type='text'>Nuevo Plugin de Wordpress: WP-Kwicks</title><content type='html'>&lt;p&gt;Este es un plugin que permite usar mediante la libreria de &lt;a href="http://www.mootools.net"&gt;Mootools&lt;/a&gt; un menu de Kwicks. Lo primero es obtener el plugin y descargarlo &lt;a href="http://www.llanura.com/wp-content/uploads/2007/11/wp-kwicks.zip"&gt;WP-Plugin Kwick,&lt;/a&gt;&lt;br&gt;Se requiere contar con la libreria de Mootools. La pueden obtener en &lt;a href="http://www.mootools.net/download"&gt;http://www.mootools.net/download&lt;/a&gt;&lt;br&gt;recomiendo obtener la version completa de la libreria.Se descomprime el archivo en la carpeta de plugins, /wp-content/plugins/ , solo se requieren dos archivos :  &lt;ul&gt; &lt;li&gt;kwicks.php  &lt;li&gt;kwicks.css &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Se activa el plugin desde el panel de administracion de wordpress, y a continuacion se tiene que configurar las opciones del plugin. Solo se tiene que ir a Opciones de wordpress y existe un nuevo boton llamado "kwicks options", se coloca el path de la libreria mootools.js, y los valores que se desea para la lista. Considerando el archivo css, los valores para deberian ser:  &lt;ul&gt; &lt;li&gt;normal:110  &lt;li&gt;small:90  &lt;li&gt;full:120 &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Se puede jugar con estos valores. Pero recordar modificar el archivo kwicks.css.  &lt;p&gt;Ahora en el tema que esten usando solo deben colocar la lista, ya sea de posts o de categorias o cualquier lista que vayan a usar de la siguiente manera: &lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="kwicks_container"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ul&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="kwicks"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="html"&gt;php&lt;/span&gt; &lt;span class="attr"&gt;wp_list_cats&lt;/span&gt;(&lt;span class="kwrd"&gt;'sort_column=name&amp;amp;hierarchical=0'&lt;/span&gt;); ?&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;ul&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Demo: &lt;a href="http://www.llanura.com"&gt;http://www.llanura.com&lt;/a&gt; &lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8659284567924336025?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8659284567924336025/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8659284567924336025' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8659284567924336025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8659284567924336025'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/11/nuevo-plugin-de-wordpress-wp-kwicks.html' title='Nuevo Plugin de Wordpress: WP-Kwicks'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-203642162680668524</id><published>2007-10-02T15:20:00.000-05:00</published><updated>2007-10-02T15:32:10.964-05:00</updated><title type='text'>Yahoo! UI (yui) TabView como menu horizontal.</title><content type='html'>Ultimamente estoy usando la libreria de Yahoo! UI para todo lo que tenga que ver con Ajax, en los sitios web en los cuales solo se requiere html. Para los casos de &lt;a href="http://asp.net/"&gt;ASP.Net&lt;/a&gt; sigo utilizando el &lt;a href="http://ajax.asp.net/"&gt;Ajax Control Toolkit&lt;/a&gt;.&lt;p&gt;Me gusto mucho el menu que encontré en la página de &lt;a href="http://tutorials.alsacreations.com/modelesmenus/hd2.htm"&gt;Raphaël GOETTER&lt;/a&gt; &lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RwKpENEDVqI/AAAAAAAAACo/_0weIArlI7I/s1600-h/Horizontal+expanding+menu+on+a+CSS+line.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RwKpENEDVqI/AAAAAAAAACo/_0weIArlI7I/s400/Horizontal+expanding+menu+on+a+CSS+line.jpg" alt="" id="BLOGGER_PHOTO_ID_5116838016337532578" border="0" /&gt;&lt;/a&gt;&lt;p&gt; &lt;/p&gt;Este consiste de un menu horizontal expandible, muy rápido y muy sencillo. El problema es que tienes que batallar un poco con el posicionamiento de CSS, y me estaba atorando con algunos margenes y detalles.&lt;p&gt;Pero tomando esta idea y con algunas modificaiones pude obtener un menu que funciona de la misma forma, pero con la ventaja de no estar batallando con lo que mencionaba anteriormente.&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_0wpDOZY7yrU/RwKpW9EDVrI/AAAAAAAAACw/WHBjJNFMMWQ/s1600-h/Subaru+Veracruz.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp2.blogger.com/_0wpDOZY7yrU/RwKpW9EDVrI/AAAAAAAAACw/WHBjJNFMMWQ/s400/Subaru+Veracruz.jpg" alt="" id="BLOGGER_PHOTO_ID_5116838338460079794" border="0" /&gt;&lt;/a&gt;&lt;p&gt; &lt;/p&gt;Para lo anterior use el widget &lt;a href="http://developer.yahoo.com/yui/docs/module_tabview.html"&gt;TabView&lt;/a&gt; de la &lt;a href="http://developer.yahoo.com/yui/"&gt;libreria de YUI&lt;/a&gt;. Sólo tuve que hacer algunas modificaciones para en el archivo de estilo de yahoo, en particular /build/tabview/assets/skins/sam/tabview.css:&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;p&gt;.yui-navset {&lt;br /&gt;clear:both;&lt;br /&gt;white-space:nowrap;&lt;br /&gt;}&lt;br /&gt;.yui-content {&lt;br /&gt;background:silver;&lt;br /&gt;}&lt;br /&gt;a.yui-link:visited {&lt;br /&gt;font-family: Verdana, Arial, Helvetica, sans-serif;&lt;br /&gt;font-size: 11px;&lt;br /&gt;font-weight: bold;&lt;br /&gt;text-decoration: none;&lt;br /&gt;margin-right: 15px;&lt;br /&gt;color: #EEEEEE;&lt;br /&gt;}&lt;br /&gt;a.yui-link:active {&lt;br /&gt;font-family: Verdana, Arial, Helvetica, sans-serif;&lt;br /&gt;font-size: 11px;&lt;br /&gt;font-weight: bold;&lt;br /&gt;text-decoration: none;&lt;br /&gt;margin-right: 15px;&lt;br /&gt;color: #EEEEEE;&lt;br /&gt;}&lt;br /&gt;a.yui-link {&lt;br /&gt;font-family: Verdana, Arial, Helvetica, sans-serif;&lt;br /&gt;font-size: 11px;&lt;br /&gt;font-weight: bold;&lt;br /&gt;text-decoration: none;&lt;br /&gt;margin-right: 15px;&lt;br /&gt;color: #EEEEEE;&lt;br /&gt;}&lt;br /&gt;a.yui-link:hover{&lt;br /&gt;color:#FFFFFF;&lt;br /&gt;text-decoration:underline;&lt;br /&gt;}&lt;/p&gt;&lt;strong&gt;Nota:&lt;/strong&gt; la anterior modificacion se puede hacer en un archivo separado de css, o hasta el final del archivo tabview.css, para poder heredar el estilo que trae por omision.&lt;p&gt;Ahora bien, el problema que encontre es cuando se da click en algunos de los botones padres del menu, no se puede ir a otra pagina se tiene que poner dentro de la parte del submenu, por lo menos una liga:&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RwKprNEDVsI/AAAAAAAAAC4/eSDAACNuh_c/s1600-h/Subaru+Veracruz+2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RwKprNEDVsI/AAAAAAAAAC4/eSDAACNuh_c/s400/Subaru+Veracruz+2.jpg" alt="" id="BLOGGER_PHOTO_ID_5116838686352430786" border="0" /&gt;&lt;/a&gt;&lt;p&gt; &lt;/p&gt;Y aunque lo anterior, funcionaba bien, el cliente y yo mismo decidimos que no era lo mejor, la navegacion se volvia repitiva, pues escoges por ejemplo financiamiento y despues te aparece la pestaña con los enlace correspondientes, pero en este caso solo es un enlace, es decir para ver una pagina habia que clickear 2 veces. No, nada de "usability".&lt;p&gt;Asi que me puse a investigar un poco sobre la libreria de Yahoo, y resulta que se puede agregar eventos y propiedades al control tabview para este tipo de requerimientos.&lt;/p&gt;&lt;p&gt;Con mi viejo pero util libro de javascript 1.0 a un lado y la documentacion del &lt;a href="http://developer.yahoo.com/yui/docs/index.html"&gt;API de Yahoo!,&lt;/a&gt; agregue el siguiente código:&lt;br /&gt;&lt;/p&gt;&lt;code&gt;&lt;/code&gt;&lt;p&gt;(function() {&lt;br /&gt;var tabView = new YAHOO.widget.TabView('demo');&lt;br /&gt;var handleActiveTabChange = function(e,obj){&lt;br /&gt;window.location=YAHOO.util.Dom.get(obj).firstChild.getAttribute("href").toString();&lt;br /&gt;return false;&lt;br /&gt;}&lt;br /&gt;var handleNewWindowFromTab = function(e,obj){&lt;br /&gt;window.open(YAHOO.util.Dom.get(obj).firstChild.getAttribute("href").toString());&lt;br /&gt;return false;&lt;br /&gt;}&lt;br /&gt;YAHOO.util.Event.addListener("tab1", "click", handleActiveTabChange, "tab1");&lt;br /&gt;YAHOO.util.Event.addListener("tab3", "click", handleNewWindowFromTab, "tab3");&lt;br /&gt;YAHOO.util.Event.addListener("tab4", "click", handleActiveTabChange, "tab4");&lt;br /&gt;YAHOO.util.Event.addListener("tab6", "click", handleActiveTabChange, "tab6");&lt;br /&gt;YAHOO.util.Event.addListener("tab7", "click", handleActiveTabChange, "tab7");&lt;br /&gt;&lt;/p&gt;&lt;p&gt;})();&lt;br /&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;Ahora bien estos "listeners" buscan la pestaña tab1, tab3, tab4, etc., y al evento click se ejecuta la funcion handleActiveTabChange o en su caso handleNewwindowFromTab. Pero se tiene que modificar la estructura del ejemplo basico de TabView.&lt;br /&gt;&lt;p&gt;&amp;lt;ul class="yui-nav"&amp;gt;&lt;br /&gt;&amp;lt;li id="tab1"&amp;gt;&amp;lt;a id="inicio" href="index.html"&amp;gt;&amp;lt;em&amp;gt;Inicio&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li&amp;gt;&amp;lt;a href="#tab2"&amp;gt;&amp;lt;em&amp;gt;Línea de modelos&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li id="tab3"&amp;gt;&amp;lt;a id="seminuevas" href=http://www.autos-usados.autoplaza.com.mx&amp;gt;&amp;lt;em&amp;gt;Unidades seminuevas&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li id="tab4"&amp;gt;&amp;lt;a href="financiamiento.htm"&amp;gt;&amp;lt;em&amp;gt;Financiamiento&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li&amp;gt;&amp;lt;a href="#tab5"&amp;gt;&amp;lt;em&amp;gt;Acerca de Subaru&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li id="tab6"&amp;gt;&amp;lt;a id="contacto" href="contacto.htm"&amp;gt;&amp;lt;em&amp;gt;Contacto&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li id="tab7" class="selected"&amp;gt;&amp;lt;a href="bolsa_trabajo.htm"&amp;gt;&amp;lt;em&amp;gt;Bolsa de trabajo&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li&amp;gt;&amp;lt;a href="#tab8"&amp;gt;&amp;lt;em&amp;gt;Mi Subaru&amp;lt;/em&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Agregue un ID a los elementos li que no tendrian un submenu con la ordenacion correspondiente y la siguiente etiqueta es  la que contiene el link, esto es importante pues en la funcion handleActiveTabChange se esta obtiendo el atributo href de la etiqueta hija de li:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;YAHOO.util.Dom.get(obj).firstChild.getAttribute("href")&lt;/li&gt;&lt;/ul&gt;Por otra parte encontre que tenia que colocar los divs correspondientes en el html, para que aquellos botones con submenus no se recorrieran:&lt;br /&gt;&lt;p&gt;&amp;lt;div id="notab1"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;div id="tab2"&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/forester.htm" class="yui-link"&amp;gt;Forester&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/impreza.htm" class="yui-link"&amp;gt;Impreza&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/imprezaWRX.htm" class="yui-link"&amp;gt;Impreza WRX&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/legacy.htm" class="yui-link"&amp;gt;Legacy&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/outback.htm" class="yui-link"&amp;gt;Outback&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;a href="autos/tribeca.htm" class="yui-link"&amp;gt;Tribeca&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;div id="notab3"&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt; Ahora lo que mi menu funciona con links a nivel raiz, o a nivel submenus.&lt;/p&gt;Listo!&lt;br /&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/12602009-203642162680668524?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/203642162680668524/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=203642162680668524' title='4 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/203642162680668524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/203642162680668524'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/10/yahoo-ui-yui-tabview-como-menu.html' title='Yahoo! UI (yui) TabView como menu horizontal.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_0wpDOZY7yrU/RwKpENEDVqI/AAAAAAAAACo/_0weIArlI7I/s72-c/Horizontal+expanding+menu+on+a+CSS+line.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6130761512647548472</id><published>2007-09-20T12:04:00.001-05:00</published><updated>2007-09-20T12:04:34.700-05:00</updated><title type='text'>Enlace veracruzano - Nuevas formas de buscar en Internet</title><content type='html'>&lt;p&gt;Muchas gracias a Enlace Veracruzano por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;septiembre con el artículo "Nuevas formas de buscar en Internet.", el cual estoy reproduciendo en las siguientes líneas: &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Es cierto que Google cambio para siempre las búsquedas en Internet, la sencilla idea de indexar lo que la gente encuentra útil en Internet ha demostrado ser muy valiosa para esta empresa. Google utiliza un algoritmo llamado Pagerank el cual representa que tan significativo es esa página Web para el resto de los usuarios. Y si es popular, debe ser porque es útil para cualquier internauta.  &lt;p&gt;Pero con la indexación de millones de páginas Web por parte de Google y además con miles de usuarios tratando de engañar a Google, haciéndolo creer que un sitio en particular es popular, cada vez los resultados de las búsquedas no son acertadas.  &lt;p&gt;Es así, que otra forma de realizar búsquedas en Internet es a través de otros servicios que se están volviendo muy populares, algunos de ellos son:  &lt;p&gt;1. &lt;b&gt;&lt;i&gt;Clusty (http://www.clusty.com)&lt;/i&gt;&lt;/b&gt; , el sitio entra en la categoría de los metabuscadores, en el cual obtiene información de diversas fuentes incluidas google, yahoo y msn, para mostrar los sitios mas representativos, cuenta además con una categorización de los enlaces mostrados.  &lt;p&gt;2. &lt;b&gt;&lt;i&gt;Rollyo (http://www.rollyo.com),&lt;/i&gt;&lt;/b&gt; el cual permite realizar búsquedas personalizadas, esto se hace delimitando cuales son los sitios que uno considera que son buena fuente de información.  &lt;p&gt;3. &lt;b&gt;&lt;i&gt;Delicious (http://del.icio.us), &lt;/i&gt;&lt;/b&gt;este sitio es una enorme colección de favoritos (bookmarks), dado que los usuarios registrados van “etiquetando” aquellas fuentes de información que guardan como favoritos, se hace mas sencilla su búsqueda gracias a la metainformación.  &lt;p&gt;4. &lt;b&gt;&lt;i&gt;Quintura (http://www.quintura.com), &lt;/i&gt;&lt;/b&gt;este sitio no es el que tiene los mejores resultados, pero el acercamiento a las búsquedas es novedoso, ya que se acompaña de una nube de etiquetas que van dando una navegación visual muy fácil de usar.  &lt;p&gt;5. &lt;b&gt;&lt;i&gt;Ask (http://www.ask.com), &lt;/i&gt;&lt;/b&gt;al igual que el anterior los resultados son muy parecidos a los de google, sin embargo las opciones visuales que presenta el sitio hace que nuestro proceso de búsqueda se simplifique enormemente.  &lt;p&gt;6. &lt;b&gt;&lt;i&gt;Answers (http://www.answers.com), &lt;/i&gt;&lt;/b&gt;como su nombre lo indica se trata de un sitio en el cual se responden todas las preguntas que los usuarios van realizando y las personas que colocaron la pregunta califican las respuestas, si se tiene una pregunta seguramente alguien ya la contestó.  &lt;p&gt;7. &lt;b&gt;&lt;i&gt;A9 (http://www.a9.com)&lt;/i&gt;&lt;/b&gt;, un sitio de búsquedas especializado en encontrar productos que se encuentran a la venta en alguna de las tiendas de comercio electrónico que tiene como afiliado. Patrocinado en su mayoría por la empresa Amazon, este sitio poco a poco a desarrollado una gran base de datos que incluyen muchos productos de venta en Internet.  &lt;p&gt;8. &lt;b&gt;&lt;i&gt;Wikipedia (http:// (www.wikipedia.org)&lt;/i&gt;&lt;/b&gt;, sitio indispensable para la búsqueda de información de tipo académico.  &lt;p&gt;Es innegable que la primera opción para cualquier persona que desea buscar algo en Internet por lo pronto es Google, pero la especialización y la creatividad es lo que marca este tipo de tecnologías de búsqueda.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6130761512647548472?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6130761512647548472/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6130761512647548472' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6130761512647548472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6130761512647548472'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/09/enlace-veracruzano-nuevas-formas-de.html' title='Enlace veracruzano - Nuevas formas de buscar en Internet'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8803837199974866112</id><published>2007-08-20T19:03:00.001-05:00</published><updated>2007-08-20T19:12:13.739-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><title type='text'>Convertir de csharp a vb</title><content type='html'>&lt;p&gt;De vez en cuando encuentro alguna clase, codigo, metodos, etc., muy útiles para lo que estoy haciendo, el problema/ventaja de asp.net es que existe a quien le gusta programar con c# o vb.&lt;/p&gt; &lt;p&gt;Por supuesto la ley de murphy se aplica, cuando estoy programando con c# resulta que el código esta en vb y viceversa.&lt;/p&gt; &lt;p&gt;Encontre rapidámente el sitio de labs.developerfusion.co.uk, que cuenta con un &lt;a href="http://labs.developerfusion.co.uk/convert/csharp-to-vb.aspx"&gt;convertidor de csharp a vb y viceversa&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Sé que se pueden crear un par de carpetas en un sitio web para usar ambos lenguajes de la siguiente manera:&lt;/p&gt;&lt;code&gt;&lt;pre&gt;/app_code &lt;br /&gt;  /vb &lt;br /&gt;  /cs &lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;&lt;p&gt;Y modificar el web.config:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;codeSubDirectories&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;add directoryName="cs"/&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;add directoryName="vb"/&amp;gt;&lt;br&gt;&amp;lt;/codeSubDirectories&amp;gt; &lt;br /&gt;&lt;p&gt;Pero este es un maravilloso recurso para cualquiera que esta en estas andanzas.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8803837199974866112?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8803837199974866112/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8803837199974866112' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8803837199974866112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8803837199974866112'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/08/convertir-de-csharp-vb.html' title='Convertir de csharp a vb'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-163675106230537476</id><published>2007-08-09T14:17:00.001-05:00</published><updated>2007-08-09T14:17:24.071-05:00</updated><title type='text'>Enlace veracruzano - Computadoras para este regreso a clases.",</title><content type='html'>&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;Muchas gracias a Enlace Veracruzano por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;agosto con el artículo " Computadoras para este regreso a clases.", el cual estoy reproduciendo en las siguientes líneas:&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;/i&gt;&lt;/b&gt; &lt;p&gt;Una de las preguntas mas comunes que me hacen en esta temporada, es acerca del equipo de cómputo que se debe de comprar ahora en el regreso a clases. Es cierto que además de la compra de los útiles escolares, cada vez mas familias hacen un esfuerzo por que sus hijos tengan acceso a una computadora para realizar sus tareas. &lt;p&gt;Desafortunadamente, las opciones del nuevo Windows complican un poco las cosas para los papás, ya que existe la versión Starter, Home Basic, Home Premium, Business y Ultimate. Además de lo anterior, la interrogante entre comprar una de escritorio y una portátil, la cantidad de memoria que debe tener, la velocidad del procesador interno, capacidad de disco duro, tarjeta de video, etc. De forma alternativa, podemos encontrar las Mac (de los creadores del iPod y iPhone) que solo cuentan con una sola versión de su sistema operativo y equipos con Linux donde existen mas de 10 distribuciones gratuitas que valen la pena intentar. &lt;p&gt;Pero lo que nadie toma en cuenta es la conexión a Internet, esto último es lo más valioso en cualquier aparato de cómputo, es mas, me atrevo a decir que posiblemente en el mediano plazo, tal vez no necesitemos una computadora como actualmente las conocemos y estemos usando aparatos parecidos al iPhone con conexión inalámbrica que servirán a cualquier niño en su tareas. &lt;p&gt;El problema es el costo de este servicio, que aun sigue siendo caro, el claro ejemplo es Telmex, que cuenta con el servicio de banda ancha a un costo de poco más de $3,500 al año, la mitad del precio de un equipo de cómputo sencillo. &lt;p&gt;Otro detalle en un equipo de cómputo es el consumo de energía eléctrica, que puede representar el tener prendido 2 focos de 100 watts, con un uso promedio de 4 horas al día, representa un aumento de hasta $100 al bimestre en una cuenta de luz. &lt;p&gt;¿Qué hacer? Tomar en cuenta que el Web toma mas importancia cada día, sobre todo en la educación de las nuevas generaciones, ya no es necesario ir a una biblioteca cuando se tiene Google y Wikipedia en la computadora. Los costos del acceso a Internet han ido bajando de precio de forma gradual, lento pero seguro. Entonces, mi recomendación es comprar &lt;b&gt;el equipo de cómputo más barato que encuentren&lt;/b&gt; de preferencia una laptop, que tenga alguna forma de ahorro de energía, &lt;b&gt;conexión a Internet alámbrica o inalámbrica&lt;/b&gt;, con cualquier versión de Windows, MacOS o Linux, lo más seguro es que sus hijos solo usen un par de programas: un navegador y uno de chat. Instalar un programa para controlar las horas de uso y sitios permitidos mediante un &lt;b&gt;programa guardián&lt;/b&gt; (Windows Vista ya cuenta con esta función de forma interna). &lt;p&gt;Comparar precios en www.buscape.com.mx es una buena idea. Así como consultar las paginas de las empresas mas importantes en México como lo son Dell (ww.dell.com.mx), HP (www.hp.com.mx), Toshiba (www.toshiba.com.mx), Sony (www.sonystyle.com.mx) Lenovo (www.lenovo.com.mx), Lanix(www.lanix.com.mx) y Gateway (www.gateway.com.mx).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-163675106230537476?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/163675106230537476/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=163675106230537476' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/163675106230537476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/163675106230537476'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/08/enlace-veracruzano-computadoras-para.html' title='Enlace veracruzano - Computadoras para este regreso a clases.&amp;quot;,'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8528196209999809353</id><published>2007-08-09T14:10:00.001-05:00</published><updated>2007-08-09T14:10:27.344-05:00</updated><title type='text'>HTML 5</title><content type='html'>&lt;p&gt;Me puse a revisar la version de trabajo de &lt;a href="http://www.w3.org/html/wg/html5/"&gt;HTML 5 del W3&lt;/a&gt;. Como desarrollador web, me da gusto que estan agregando algunas formas sencillas de poner contenido con mejor semántica. Una de las primeras etiquetas que observe es &amp;lt;nav&amp;gt;, que tiene como objetivo contar con contenido de enlaces dentro de una pagina. Ya estoy usando esta etiqueta de la siguiente forma &amp;lt;div id=nav&amp;gt;, obviamente el proposito de usar solo &amp;lt;nav&amp;gt; es estandarizar algo que es muy comun en el dia a dia del desarrollo web, pero que robots araña (tipo google)&amp;nbsp;y programas no entienden, de esta manera se podra determinar mas facil lo anterior.&lt;/p&gt; &lt;p&gt;Otra etiqueta importante es &amp;lt;audio&amp;gt;, esta etiqueta debio de estar presente desde hace mucho tiempo pero solo hasta esta versión parece que saldra a la luz. Esperemos que para la versión final de HTML 5 se quede.&lt;/p&gt; &lt;p&gt;Existen algunas etiquetas mas que se me hacen interesante, como &amp;lt;time&amp;gt;, &amp;lt;figure&amp;gt;, &amp;lt;dialog&amp;gt;, &amp;lt;section&amp;gt;, etc. Pero lo novedoso es que se va a lograr contar con un sistema de analisis (parsing) del codigo, algo asi como lo que sucede cuando se intenta abrir un archivo de xml en el explorer o en otra herramienta. Esto obligara a que el codigo de html sea escrito de forma correcta.&lt;/p&gt; &lt;p&gt;Lo cual me parece muy bueno, pues muchas veces los scripts de javascript por mencionar algo, tienen problemas de ejecucion y vuelan con errores de ejecucion a los navegadores.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8528196209999809353?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8528196209999809353/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8528196209999809353' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8528196209999809353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8528196209999809353'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/08/html-5.html' title='HTML 5'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7038361128253283036</id><published>2007-08-09T13:06:00.001-05:00</published><updated>2007-08-09T13:06:11.494-05:00</updated><title type='text'>Codepress plugin para Wordpress</title><content type='html'>&lt;p&gt;Recientemente encontré este maravilloso &lt;a href="http://www.naden.de/blog/wordpress-code-editor"&gt;plugin para wordpress&lt;/a&gt;, el cual con lo permisos necesarios permite realizar cualquier tipo de modificación para las plantillas y los mismo plugins de wordpress.&lt;/p&gt; &lt;p&gt;Lo interesante de este plugin en si, es que utiliza &lt;a title="Codepress" href="http://www.codepress.org"&gt;Codepress&lt;/a&gt; el cual es un editor de código realizado con JavaScript.&lt;/p&gt; &lt;p&gt;Espero que para la próxima versión de WordPress venga integrado por omisión para la edicion de las plantillas, etc.&lt;/p&gt; &lt;p&gt;Actualmente lo tengo ya incorporado como instalación para los clientes que asi lo requieren. El plugin se puede obtener en &lt;a title="http://www.naden.de/blog/wordpress-code-editor" href="http://www.naden.de/blog/wordpress-code-editor"&gt;http://www.naden.de/blog/wordpress-code-editor&lt;/a&gt;, las instrucciones estan en alemán pero no tiene gran complejidad.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Es descargar.&lt;/li&gt; &lt;li&gt;Ponerlo en la sección de plugins /wp-content/plugins/code-editor&lt;/li&gt; &lt;li&gt;Activar el plugin en la pagina de administración&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7038361128253283036?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7038361128253283036/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7038361128253283036' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7038361128253283036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7038361128253283036'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/08/codepress-plugin-para-wordpress.html' title='Codepress plugin para Wordpress'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4956778411172321037</id><published>2007-07-16T17:35:00.001-05:00</published><updated>2007-07-16T18:42:17.651-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><title type='text'>Control Login usando MySQL</title><content type='html'>&lt;p&gt;Estuve el fin de semana haciendo diversas pruebas con el control login de asp.net, primero que nada la verdad es que el membership provider de microsoft, estará muy fácil de instalar y usar pero esta muy limitado, necesitas montar toda la aplicacion alrededor de las tablas que microsoft decide para la administración de los usuarios, aún cuando la estructura es buena, en muchas ocasiones esa misma tabla tiene que llevar otro tipo de información, pude haber hecho una tabla que se manejara de forma paralela para el resto de la información de estos usuarios, pero uno es necio de verdad, lo que quiero es usar mi tabla, además quiero que este en mysql (solo me falta que me ponga otra vez de necio y montar la aplicación sobre linux).&lt;/p&gt; &lt;p&gt; Lo primero fue crear mi tabla en mysql, solo pondré la estructura necesaria para el ejemplo:&lt;/p&gt;&lt;code&gt; &lt;/code&gt;&lt;p&gt;CREATE TABLE `medicos` (&lt;br /&gt;`IDMedico` int(10) NOT NULL auto_increment,&lt;br /&gt;`Titulo` varchar(50) character set latin1 default NULL,&lt;br /&gt;`Nombre` varchar(50) character set latin1 default NULL,&lt;br /&gt;`ApellidoPaterno` varchar(50) character set latin1 default NULL,&lt;br /&gt;`ApellidoMaterno` varchar(50) character set latin1 default NULL,&lt;br /&gt;`Email` varchar(50) character set latin1 default NULL,&lt;br /&gt;`Password` varchar(50) character set latin1 NOT NULL default '0',&lt;br /&gt;PRIMARY KEY (`IDMedico`),&lt;br /&gt;KEY `Password` (`Password`)&lt;br /&gt;) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_spanish_ci AUTO_INCREMENT=2 ;&lt;/p&gt; &lt;p&gt;CREATE TABLE &lt;/p&gt; &lt;p&gt; En esta ocasión decidí conectarme a MySQL mediante el connector de .Net (&lt;a href="http://llanura.blogspot.com/2007/04/aspnet-usando-mysql-en-linux-con-mono.html"&gt;funciona mejor que el ByteFX&lt;/a&gt;) las instrucciones para instalar este componente estan en &lt;a title="http://dev.mysql.com/downloads/connector/net/" href="http://dev.mysql.com/downloads/connector/net/"&gt;http://dev.mysql.com/downloads/connector/net/&lt;/a&gt;. El namespace de este componente es MySql.Data.MySqlClient, la cual tenemos que agregar como una referencia al proyecto en el que estamos, en realidad no se porque esto no se dio de manera automática cuando realice la instalación, pero lo resolví agregándolo.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/Rpv-bBnb4WI/AAAAAAAAACQ/3T4Dyofgpd0/s1600-h/Clipboard01.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/Rpv-bBnb4WI/AAAAAAAAACQ/3T4Dyofgpd0/s400/Clipboard01.jpg" alt="" id="BLOGGER_PHOTO_ID_5087939944288870754" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/Rpv-bBnb4XI/AAAAAAAAACY/OOnTD2FNZRQ/s1600-h/Clipboard03.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/Rpv-bBnb4XI/AAAAAAAAACY/OOnTD2FNZRQ/s400/Clipboard03.jpg" alt="" id="BLOGGER_PHOTO_ID_5087939944288870770" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;A continuación creamos un archivo con una clase para la autenticación de los usuarios:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Imports Microsoft.VisualBasic&lt;br /&gt;Imports System.Web&lt;br /&gt;Imports System.Web.Services&lt;br /&gt;Imports System.Web.Services.Protocols&lt;br /&gt;Imports MySql.Data.MySqlClient&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Public Class AutenticarMedico&lt;br /&gt; Public Function Autenticar(ByVal username As String, ByVal password As String) As Boolean&lt;br /&gt;     Dim conn As New MySqlConnection&lt;br /&gt;     Dim myCommand As New MySqlCommand&lt;br /&gt;     Dim myAdapter As New MySqlDataAdapter&lt;br /&gt;     Dim myData As New Data.DataTable&lt;br /&gt;     Dim SQL As String&lt;br /&gt;     Dim opcion As Boolean&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     SQL = "SELECT * FROM Medicos WHERE username='" + username + "' AND Password='" + password + "';"&lt;br /&gt;&lt;br /&gt;     conn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings("emConnectionString").ConnectionString&lt;br /&gt;&lt;br /&gt;         conn.Open()&lt;br /&gt;&lt;br /&gt;             myCommand.Connection = conn&lt;br /&gt;             myCommand.CommandText = SQL&lt;br /&gt;&lt;br /&gt;             myAdapter.SelectCommand = myCommand&lt;br /&gt;             myAdapter.Fill(myData)&lt;br /&gt;&lt;br /&gt;             If (myData Is DBNull.Value Or myData.Rows.Count &gt; 0) Then&lt;br /&gt;                 opcion = True&lt;br /&gt;             Else&lt;br /&gt;                 opcion = False&lt;br /&gt;             End If&lt;br /&gt;&lt;br /&gt;         conn.Close()&lt;br /&gt;     Return opcion&lt;br /&gt; End Function&lt;br /&gt;End Class&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;Guardamos nuestro archivo anterior. Creamos uno nuevo con extensión aspx, es decir un web form, agregamos el control Login de nuestra caja de herramientas, opcionalmente le damos algún formato, escogemos el control para agregarle el método on_authenticate el cual en lugar de irse a membership como omisión tendría que realizar la comprobación hacia nuestro mysql mediante las siguientes instrucciones:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;    Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs)&lt;br /&gt;      Dim verificarUsuario As New AutenticarMedico&lt;br /&gt;      Dim usuario As String = Login1.UserName&lt;br /&gt;      Dim password As String = Login1.Password&lt;br /&gt;      Dim resultado As Boolean&lt;br /&gt;   &lt;br /&gt;      resultado = verificarUsuario.Autenticar(usuario, password)&lt;br /&gt;   &lt;br /&gt;      e.Authenticated = resultado&lt;br /&gt;   &lt;br /&gt;  End Sub&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;A continuación una breve video en youtube:&lt;br /&gt;&lt;br /&gt;&lt;object height="350" width="425"&gt; &lt;param name="movie" value="http://www.youtube.com/v/n3p_lgnrLyE"&gt;  &lt;embed src="http://www.youtube.com/v/n3p_lgnrLyE" type="application/x-shockwave-flash" height="350" width="425"&gt;&lt;/embed&gt;  &lt;/object&gt;&lt;br /&gt;Como resultado tenemos el control en una pagina que se autentifica contra la base de datos de mysql.&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4956778411172321037?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4956778411172321037/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4956778411172321037' title='6 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4956778411172321037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4956778411172321037'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/07/control-login-usando-mysql.html' title='Control Login usando MySQL'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_0wpDOZY7yrU/Rpv-bBnb4WI/AAAAAAAAACQ/3T4Dyofgpd0/s72-c/Clipboard01.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3387268458916015342</id><published>2007-07-16T15:12:00.001-05:00</published><updated>2007-07-16T18:40:57.425-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><title type='text'>Mi nuevo esquema básico de html</title><content type='html'>&lt;p&gt;En los ultimos meses he desarrollado sitios web, basados en un sistema basico de divs en combinacion con CSS, esto no me ha facilitado el diseño, pues despues de años de usar tablas y formas mas rudimentarias por asi decirlo, el uso de CSS para el diseño se torna laborioso, pero al mismo tiempo se logra tener un mejor diseño y la semantica del html tiene sentido.&lt;/p&gt; &lt;p&gt;Lo cierto tambien es que tenia que renovar mis practicas de construccion de paginas y he terminado por convercerme en usar divs. No se si en las escuelas actualmente enseñan estas practicas. Veo que por lo menos en México y en particular el diseño que reviso en Veracruz, sigue usando las clasicas tablas y paginas hechas con imagenes divididas.&lt;/p&gt; &lt;p&gt;Ademas, he reducido mi uso de etiquetas a unas cuantas, recuerdo que solia utilizar dl, blockquote, hasta el famoso marquee de ie4 lo llegue a usar, pero en realidad pierden el sentido cuando aplicamos solo las etiquetas div, span, ul, li con el uso apropiado de css.&lt;/p&gt; &lt;p&gt;Por otra parte en el ultimo proyecto me obligué a crear una unica plantilla de html y los diseños estan por completo realizados con css, los ejemplos estaran disponible proximamente.&lt;/p&gt; &lt;p&gt;Sin mas que decir, aqui mi esquema basico:&lt;/p&gt; &lt;p&gt; &lt;/p&gt;&lt;code&gt; &lt;/code&gt;&lt;p&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" http://www.w3.org/TR/html4/strict.dtd"&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;head&amp;gt;&lt;/p&gt; &lt;p&gt; &amp;lt;title&amp;gt;Titulo del Sitio Web&amp;lt;/title&amp;gt;&lt;/p&gt; &lt;p&gt; &amp;lt;link rel="stylesheet" type="text/css" href="estilo.css" /&amp;gt;&lt;/p&gt; &lt;p&gt; &amp;lt;meta name="keywords" content="HTML, DHTML, CSS, XML, XHTML, JavaScript, VBScript" /&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;meta name="description" content="Free Web tutorials on HTML, CSS, XML, and XHTML" /&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/head&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;body&amp;gt;&lt;/p&gt; &lt;p&gt; &amp;lt;div id="cuerpo"&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;div id="encabezado"&amp;gt;&lt;/p&gt; &lt;p&gt;   &amp;lt;div id="logo"&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div id="eslogan"&amp;gt;&amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;div id="menu"&amp;gt;&lt;/p&gt; &lt;p&gt;   &amp;lt;ul&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="index.html"&amp;gt;Inicio&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="empres.html"&amp;gt;Nuestra empresa&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="productos.html"&amp;gt;Productos&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="servicios.html"&amp;gt;Servicios&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="clientes.html"&amp;gt;Portafolio clientes&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;     &amp;lt;li&amp;gt;&amp;lt;a href="contacto.html"&amp;gt;Contacto&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt; &lt;p&gt;   &amp;lt;/ul&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;div id="contenido"&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;h1 id="titulo"&amp;gt;Bienvenido a nuestro sitio&amp;lt;/h1&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;h2 id="subtitlo"&amp;gt;por webmaster@llanura.com&amp;lt;/h2&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;p id="parrafo"&amp;gt;Hola mundo&amp;lt;/p&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;div id="piedepagina"&amp;gt;&lt;/p&gt; &lt;p&gt;   &amp;lt;address id="direccion"&amp;gt;Veracruz, Ver.&amp;lt;/address&amp;gt;&lt;/p&gt; &lt;p&gt;  &amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt; &amp;lt;/div&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/body&amp;gt;&lt;/p&gt; &lt;p&gt;&amp;lt;/html&amp;gt;&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt; La estructura anterior permite crear cualquier diseño:&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_0wpDOZY7yrU/RpvR4hnb4KI/AAAAAAAAAAw/g4WIEAeYwlI/s1600-h/plantilla01.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp2.blogger.com/_0wpDOZY7yrU/RpvR4hnb4KI/AAAAAAAAAAw/g4WIEAeYwlI/s400/plantilla01.gif" alt="" id="BLOGGER_PHOTO_ID_5087890973071761570" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_0wpDOZY7yrU/RpvR4hnb4LI/AAAAAAAAAA4/MvAnh760hPU/s1600-h/plantilla02.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp2.blogger.com/_0wpDOZY7yrU/RpvR4hnb4LI/AAAAAAAAAA4/MvAnh760hPU/s400/plantilla02.gif" alt="" id="BLOGGER_PHOTO_ID_5087890973071761586" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RpvR4xnb4MI/AAAAAAAAABA/Xs8RDUasM4Q/s1600-h/plantilla03.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RpvR4xnb4MI/AAAAAAAAABA/Xs8RDUasM4Q/s400/plantilla03.gif" alt="" id="BLOGGER_PHOTO_ID_5087890977366728898" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RpvR4xnb4NI/AAAAAAAAABI/3CoxKn9ztDQ/s1600-h/plantilla04.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RpvR4xnb4NI/AAAAAAAAABI/3CoxKn9ztDQ/s400/plantilla04.gif" alt="" id="BLOGGER_PHOTO_ID_5087890977366728914" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/RpvR5Bnb4OI/AAAAAAAAABQ/4YREpyBU_XY/s1600-h/plantilla05.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/RpvR5Bnb4OI/AAAAAAAAABQ/4YREpyBU_XY/s400/plantilla05.gif" alt="" id="BLOGGER_PHOTO_ID_5087890981661696226" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RpvSUxnb4PI/AAAAAAAAABY/X-HW37BFk5Y/s1600-h/plantilla06.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RpvSUxnb4PI/AAAAAAAAABY/X-HW37BFk5Y/s400/plantilla06.gif" alt="" id="BLOGGER_PHOTO_ID_5087891458403066098" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_0wpDOZY7yrU/RpvSUxnb4QI/AAAAAAAAABg/XgNvwluvDpw/s1600-h/plantilla07.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp3.blogger.com/_0wpDOZY7yrU/RpvSUxnb4QI/AAAAAAAAABg/XgNvwluvDpw/s400/plantilla07.gif" alt="" id="BLOGGER_PHOTO_ID_5087891458403066114" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4RI/AAAAAAAAABo/1CEl2vYvVE0/s1600-h/plantilla08.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4RI/AAAAAAAAABo/1CEl2vYvVE0/s400/plantilla08.gif" alt="" id="BLOGGER_PHOTO_ID_5087891462698033426" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4SI/AAAAAAAAABw/imEaa2bwV4g/s1600-h/plantilla09.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4SI/AAAAAAAAABw/imEaa2bwV4g/s400/plantilla09.gif" alt="" id="BLOGGER_PHOTO_ID_5087891462698033442" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4TI/AAAAAAAAAB4/gVxjGow57R4/s1600-h/plantilla10.gif"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_0wpDOZY7yrU/RpvSVBnb4TI/AAAAAAAAAB4/gVxjGow57R4/s400/plantilla10.gif" alt="" id="BLOGGER_PHOTO_ID_5087891462698033458" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3387268458916015342?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3387268458916015342/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3387268458916015342' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3387268458916015342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3387268458916015342'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/07/mi-nuevo-esquema-bsico-de-html.html' title='Mi nuevo esquema básico de html'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_0wpDOZY7yrU/RpvR4hnb4KI/AAAAAAAAAAw/g4WIEAeYwlI/s72-c/plantilla01.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1455858903844585783</id><published>2007-07-16T14:15:00.001-05:00</published><updated>2007-07-16T18:38:44.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Enlace Veracruzano - Wikis</title><content type='html'>&lt;p&gt;Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;julio con el artículo "&lt;b&gt;&lt;b&gt;WIKIS&lt;/b&gt;&lt;/b&gt;", el cual estoy reproduciendo en las siguientes lineas:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;La palabra WIKI-WIKI proviene de la lengua hawaiana que significa “rápido”, pero en el mundo Web, esta palabra se refiere a la creación de contenidos y sitios Web colaborativos. Tal vez el mejor ejemplo de este tipo de aplicaciones es Wikipedia.org, un esfuerzo mundial por tener la mejor enciclopedia en Internet. El soporte para este sitio es precisamente este tipo de herramientas, las cuales permiten que cualquier usuario con permisos pueda agregar y/o modificar más información.&lt;/p&gt; &lt;p&gt;En el caso de Wikipedia.org, cualquier usuario puede registrarse de forma gratuita y colaborar con los documentos que se encuentran en línea, y ciertamente se esta volviendo la herramienta educativa mas importante en el Web. Mucha de la información se encuentra en idioma ingles, pero el mayor crecimiento se esta dando en otras lenguas como el alemán, chino y español. Pero existen más de 250 lenguas usadas en Wikipedia.org entre ellas el Náhuatl (nah.wikipedia.org). &lt;p&gt;Actualmente en Internet muchos desarrollos de software, están usando algún Wiki para crear manuales y documentación relacionada con estos productos. Una ventaja de este tipo de utilerías Web es la gran sencillez con el que se puede crear contenido de una manera rápida (wiki-wiki). Pero inclusive, permiten que los usuarios y clientes de este producto, que van encontrando nuevos usos a sus productos, pongan en la documentación estos ejemplos. &lt;p&gt;Además del claro ejemplo de Wikipedia, los wikis educativos permiten que en una escuela, colegio o universidad, las clases impartidas sean revisadas no solo por los maestros y estudiantes, sino que permiten que padres de familia puedan tener un rol mas activo en la educación, al contribuir con su propia experiencia en ejemplos de diversas materias. &lt;p&gt;Ahora bien, en el ámbito empresarial el uso de un Wiki en una intranet permite a una organización: &lt;ul&gt; &lt;li&gt;Planear proyectos de desarrollos &lt;li&gt;Crear una base de conocimientos &lt;li&gt;Implementar sistemas de flujos &lt;li&gt;Registro y control de operaciones&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Por ejemplo, un Wiki funciona de manera excepcional en una empresa con mucha rotación de personal, al permitir que los manuales de operación y la base de conocimiento de los diferentes puestos en una organización se mantengan en un repositorio con toda la información necesaria, logrando que un nuevo empleado se documente de forma ágil, sobre los procesos de la empresa &lt;p&gt;Los Wikis no sólo funcionan para la administración de texto algunos de ellos están orientados, hacia la manipulación de imágenes, de música y de video. Actualmente existen más de 50 productos que se distinguen por la variedad de precios, lenguaje en que están desarrollados, requerimientos de sistema, etc., un buen sitio web para comparar cualquiera de estos productos es &lt;a href="http://www.wikimatrix.org/"&gt;www.wikimatrix.org&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/12602009-1455858903844585783?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1455858903844585783/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1455858903844585783' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1455858903844585783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1455858903844585783'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/07/enlace-veracruzano-wikis.html' title='Enlace Veracruzano - Wikis'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7171685856168090440</id><published>2007-06-30T12:11:00.001-05:00</published><updated>2007-07-16T18:38:44.319-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Enlace Veracruzano - Portadas Web Personales</title><content type='html'>&lt;p&gt;Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;junio con el artículo "&lt;b&gt;&lt;b&gt;PORTADAS WEB PERSONALES&lt;/b&gt;&lt;/b&gt;", el cual estoy reproduciendo en las siguientes lineas:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Cada vez que nos acercamos a un puesto de revistas y/o de periódicos, indudablemente lo primero que hacemos es leer los títulos de las diferentes opciones que tenemos a la vista, en algunas ocasiones ya contamos con algún periódico o revista que preferimos o que normalmente compramos, pero siempre una portada nos dará una idea general del contenido. &lt;p&gt;De igual manera en Internet podemos tener una portada Web en la cual se incorporaran diferentes encabezados o títulos provenientes de diferentes fuentes de información, de tal forma que en una sola ventana del navegador podremos tener desde la temperatura de alguna región en particular hasta las últimas noticias de las diversas agencias internacionales como Reuters, Associated Press, etc. &lt;p&gt;Para lo anterior tenemos que registrarnos en alguno de los sitios Web especializados en tener portadas Web o paginas de inicio personalizadas como son PageFlakes (www.pageflakes.com), NetVibes (www.netvibes.com), Mi Yahoo! (my.yahoo.com), iGoogle (www.google.com/ig), o Live de Microsoft (www.live.com). &lt;p&gt;Después de obtener un usuario y contraseña, podemos agregar los diferentes contenidos que nos permitan cada uno de los sitios. Una de las características comunes es la posibilidad de usar un formato estándar llamado Really Simple Syndication o RSS que es usado por diversas empresas que se dedican a publicar información en Internet, como son los periódicos El Universal, La Jornada, Reforma, El Norte, CNN, etc., incluyendo las secciones deportivas, de espectáculos, sociales, etc. &lt;p&gt;En el momento en que decidamos que alguno de los títulos o encabezados nos parece interesante, podremos dar un clic y leer la nota completa. Aunque las mejores aplicaciones que existen ahora en el mercado son de empresas de tamaño pequeño, el triunvirato MYG (Microsoft, Yahoo! y Google) está impulsando estas herramientas con sus usuarios. El caso particular de Yahoo! con su versión beta del cliente Web para correo electrónico ya permite personalizar la ventana de inicio. &lt;p&gt;Día a día, la información que se puede ir agregando a una portada Web es mayor y más diversificada, se pueden incluir fotos de algún servicio Web como Flickr o vídeos de algún sitio web como YouTube o Metacafe, canales de información especializada, búsquedas de conceptos o por tema, por ejemplo existe en MS Live un gadget que permite a todos los ciudadanos mexicanos obtener información de donde pueden realizar sus tramites, como el pasaporte, la licencia de conducir, el pago de tenencia y demás servicios que el gobierno de la republica mexicana ofrece.  &lt;p&gt;En un plano empresarial estas páginas nos permiten ver los cambios del mercado de dinero, las noticias locales, las ofertas que ofrecen nuestros proveedores, los correos electrónicos que recibimos en nuestros diferentes buzones, los anuncios clasificados de diversos portales Web, notificaciones sobre los pagos de impuestos de la secretaria de hacienda, etc. &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7171685856168090440?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7171685856168090440/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7171685856168090440' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7171685856168090440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7171685856168090440'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/06/enlace-veracruzano-portadas-web.html' title='Enlace Veracruzano - Portadas Web Personales'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7921038902206266925</id><published>2007-05-16T19:10:00.001-05:00</published><updated>2007-07-16T18:38:44.320-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Enlace Veracruzano - El Big Brother del Planeta Tierra</title><content type='html'>&lt;p&gt;Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;mayo con el artículo "&lt;b&gt;EL BIG BROTHER DEL PLANETA TIERRA&lt;/b&gt;", el cual estoy reproduciendo en las siguientes lineas:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Si es una de esas personas que disfruta del sol, pero no gusta de ir a un lugar tan publico como una playa, la solución es quedarse en casa a disfrutar de una terraza o por lo menos de una cómoda azotea. Pero, tenga cuidado que los curiosos y fisgones están a la orden del día, y para nuestro caso no solo desde una ventana en alguna casa, sino a través de algo tan sencillo como un monito de computadora. Los satélites que se encuentran girando alrededor de nuestro planeta, pueden descubrir nuestro gusto por tomar un baño de sol. &lt;p&gt;Diariamente los satélites TERRA-MODIS y LandSat toman fotografías desde las alturas con una resolución que llega a por lo menos los 25 metros de pixel. Existen tres aplicaciones que cuentan con una forma sencilla de usar estas imágenes: Google Earth, Microsoft Virtual Earth y NASA World Wind. &lt;p&gt;Cada uno de los anteriores tienen prestaciones diferentes, pero, posiblemente el mas usado es Google Earth, el cual cuenta con una forma de señalar lugares, crear estructuras de edificios en 3D, de monumentos, etc. La aplicación de la NASA tiene como fuerte las imágenes climatológicas, de incendios y topográficas, siguiendo siempre un fin científico. Lo más valioso de la aplicación de Microsoft son la gran cantidad de calles, avenidas y carreteras trazadas con las que cuenta, sin embargo estas son en su mayoría de ciudades de EEUU. &lt;p&gt;Entre las curiosidades de Google Earth, una es la que permite marcar puntos específicos (pins) para señalar algún lugar, edificio, monumento, etc., por cualquier usuario, otra es que se puede agregar imágenes en algún pin y otra mas, permite tener en la capa Comercial las diversas sucursales de una empresa, los cajeros automáticos de algún banco comercial, etc. Existen varios sitios en Internet que muestran algunas imágenes obtenidas de esta aplicación en las cuales se muestran personas haciendo cualquier tipo de actividad, entre ellas la de estar recostado claramente tomando el sol y posiblemente sin un bikini. &lt;p&gt;Es cierto que actualmente no se puede apreciar con toda claridad los objetos en estas aplicaciones, por lo menos tiene que cubrir un metro cuadrado para determinar lo que puede ser, pero los adelantos en este tipo de tecnología, están avanzando con gran rapidez, ya existen cámaras digitales de alta definición que pueden fotografiar un objetivo a mas de un kilómetro de distancia si no existe algún obstáculo. Por lo que es pausible que en unos cuantos años la resolución de las imágenes satelitales sea de mayor precisión. &lt;p&gt;Seguramente el futuro de este tipo de tecnología, será apoyado por video con transmisión en tiempo real, es decir, el verdadero “Big Brother” puede estar a la vuelta de la esquina. Por lo pronto, si no se encuentra entre las personas que son exhibicionistas, le aconsejamos se olvide de los vecinos, mejor piense un momento y vea al cielo buscando algún punto metálico, le aseguro no será un platillo volador, y permita que desaparezca para poder disfrutar del sol. &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7921038902206266925?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7921038902206266925/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7921038902206266925' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7921038902206266925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7921038902206266925'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/05/enlace-veracruzano-el-big-brother-del.html' title='Enlace Veracruzano - El Big Brother del Planeta Tierra'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6242928871276727603</id><published>2007-04-04T19:32:00.001-05:00</published><updated>2007-07-16T18:40:37.895-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='GoDaddy'/><category scheme='http://www.blogger.com/atom/ns#' term='Mono'/><title type='text'>Asp.net usando MySQL en Linux con Mono</title><content type='html'>&lt;p&gt;Una vez que esta instalado mono y ya esta funcionando asp.net en linux, conforme al post &lt;a href="http://llanura.blogspot.com/2007/04/mono-en-un-vds-de-godaddy.html"&gt;Mono en un VDS de Godaddy&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/WelcometoMonoXSP2.jpg" atomicselection="true"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="526" src="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/WelcometoMonoXSP_thumb.jpg" width="319" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Vamos a realizar un par de modificaciones al ejemplo de base de datos que viene por omision en la carpeta de pruebas (test), para que se pueda accesar a MySQL&amp;nbsp;con&amp;nbsp;los archivos dbpage1.aspx, dbpage2.aspx:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/WelcometoMonoXSP22.jpg" atomicselection="true"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="287" src="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/WelcometoMonoXSP2_thumb.jpg" width="286" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Resulta que los ejemplos que trae esta instalacion de mono es con un servidor PostgreSQL, asi que&amp;nbsp;para nuestro caso que usamos MySQL tenemos que cambiar los archivos de configuracion de la aplicacion, en particular el web.config:&amp;nbsp;&lt;/p&gt;&lt;code&gt;&amp;lt;appSettings&amp;gt;&lt;br&gt;.&lt;br&gt;.&lt;br&gt;.&lt;br&gt;&amp;lt;add key="DBProviderAssembly"&lt;br&gt;value="ByteFX.Data"/&amp;gt;&lt;br&gt;&amp;lt;add key="DBConnectionType"&lt;br&gt;value="ByteFX.Data.MySqlClient.MySqlConnection"/&amp;gt;&lt;br&gt;&amp;lt;add key="DBConnectionString"&lt;br&gt;value="server=127.0.0.1;user id=xxxx;password=xxxxx;database=xxxxx"/&amp;gt;&lt;br&gt;.&lt;br&gt;.&lt;br&gt;.&lt;br&gt;&amp;lt;/appSettings&amp;gt; &lt;/code&gt; &lt;p&gt;Con lo anterior le decimos a nuestra aplicacion que use el conector ByteFX para hacer uso de MySQL. Este provider ya viene de forma estandar en la instalacion de mono.&lt;/p&gt; &lt;p&gt;Creamos nuestra base de datos en MySQL con:&lt;/p&gt;&lt;code&gt; &lt;p&gt;CREATE TABLE `test` (&lt;br&gt;`person` text character set utf8 collate utf8_spanish_ci NOT NULL,&lt;br&gt;`email` text character set utf8 collate utf8_spanish_ci NOT NULL&lt;br&gt;) ENGINE=MyISAM DEFAULT CHARSET=latin1;  &lt;p&gt;CREATE TABLE `customers` (&lt;br&gt;`id` INT( 8 ) NOT NULL ,&lt;br&gt;`name` VARCHAR( 256 ) CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL ,&lt;br&gt;`address` VARCHAR( 256 ) CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL ,&lt;br&gt;PRIMARY KEY ( `id` )&lt;br&gt;) ENGINE = MYISAM ;&lt;/p&gt;&lt;/code&gt;  &lt;p&gt;&amp;nbsp;Una vez creadas las tablas en MySQL ejecutamos los archivos:&lt;/p&gt; &lt;p&gt;dbpage1.aspx&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/SomeDBtesting2.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="183" src="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/SomeDBtesting_thumb.jpg" width="433" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;dbpage2.aspx&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/MoreDBtestingplustabcontrol2dll6.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="103" src="http://www.llanura.com/imagenes/Asp.netusandoMySQLenLinuxconMono_FFF5/MoreDBtestingplustabcontrol2dll_thumb4.jpg" width="400" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6242928871276727603?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6242928871276727603/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6242928871276727603' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6242928871276727603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6242928871276727603'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/04/aspnet-usando-mysql-en-linux-con-mono.html' title='Asp.net usando MySQL en Linux con Mono'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-969497690135312037</id><published>2007-04-04T18:06:00.001-05:00</published><updated>2007-07-16T18:40:37.897-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='GoDaddy'/><category scheme='http://www.blogger.com/atom/ns#' term='Mono'/><title type='text'>Mono en un VDS de Godaddy</title><content type='html'>&lt;p&gt;Tenemos un desarrollo listo en asp.net y nos topamos con la necesidad de ponerlo en Linux. La respuesta es usar mono en apache, y dado que ya contamos con un servidor en internet con Fedora 4 decidimos instalarlo.&lt;/p&gt; &lt;p&gt;Pero&amp;nbsp;resulta&amp;nbsp;que el Virtual Dedicated Server (VDS) de GoDaddy no trae por omisión la instalación de mono, asi que seguimos las instrucciones de go-mono.com para instalarlo.&lt;/p&gt; &lt;p&gt;Lo primero es obtener&amp;nbsp;3 archivos zip desde &lt;a href="http://www.mono-project.com/Downloads"&gt;http://www.mono-project.com/Downloads&lt;/a&gt;:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;mono.zip  &lt;li&gt;xsp (para obtener la carpeta test xsp-1.2.3-0.novell.noarch.rpm)  &lt;li&gt;mod_mono (un rpm: mod_mono-1.2.1-0.fedora4.novell.i386.rpm)&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Es lo unico que se requiere para ejecutar un desarrollo asp.net 1.1. Para desarrollos de asp.net 2.0 (digamos construidos con Visual Web Developer) es&lt;strong&gt; recomendable&lt;/strong&gt; esperar a la version mono 2.0. En nuestro caso es un desarrollo sencillo que no utiliza muchos objetos nuevos de net 2.0, asi que no hubo problema.&lt;/p&gt; &lt;p&gt;Lo siguiente es descomprimir&lt;/p&gt;&lt;code&gt;$ unzip mono-all.zip&lt;/code&gt;  &lt;p&gt;Instalar mono con Root (debe incluirse los archivos de xsp y mod_mono)&amp;nbsp;:&lt;/p&gt;&lt;code&gt;$ rpm -Uvh *rpm&lt;/code&gt;  &lt;p&gt;Con lo anterior ya tenemos instalado mono, ahora tenemos que configurar el servidor apache, para esto cambiamos de&amp;nbsp;directorio a /etc/httpd/conf/. Aun cuando se ha instalado xsp que en si es un servidor, no lo usaremos, como mencionamos solo queremos la carpeta test que se instala. &lt;/p&gt; &lt;p&gt;Tenemos que editar el archivo&amp;nbsp;httpd.conf&amp;nbsp;agregando una linea, de preferencia despues de:&lt;/p&gt; &lt;p&gt;&lt;code&gt;#&lt;br&gt;# Load config files from the config &lt;br&gt;&lt;/code&gt;&lt;code&gt;# directory&amp;nbsp;&amp;nbsp;"/etc/httpd/conf.d".&lt;br&gt;#&lt;br&gt;Include conf.d/*.conf&lt;br&gt;&lt;strong&gt;Include /etc/httpd/conf.d/mod_mono.conf&lt;/strong&gt;&lt;/code&gt; &lt;/p&gt; &lt;p&gt;Guardamos el archivo anterior y verificamos que mod_mono.conf efectivamente se encuentre dentro de la carpeta conf.d, de lo contrario creamos un nuevo archivo y agregamos lo siguiente:&lt;/p&gt;&lt;code&gt; &lt;p&gt;# mod_mono.conf  &lt;p&gt;# Acthung! This file may be overwritten&lt;br&gt;# Use 'include mod_mono.conf' from other configuration file&lt;br&gt;# to load mod_mono module.  &lt;p&gt;&amp;lt;IfModule !mod_mono.c&amp;gt;&lt;br&gt;LoadModule mono_module /usr/lib/httpd/modules/mod_mono.so&lt;br&gt;AddType application/x-asp-net .aspx&lt;br&gt;AddType application/x-asp-net .asmx&lt;br&gt;AddType application/x-asp-net .ashx&lt;br&gt;AddType application/x-asp-net .asax&lt;br&gt;AddType application/x-asp-net .ascx&lt;br&gt;AddType application/x-asp-net .soap&lt;br&gt;AddType application/x-asp-net .rem&lt;br&gt;AddType application/x-asp-net .axd&lt;br&gt;AddType application/x-asp-net .cs&lt;br&gt;AddType application/x-asp-net .config&lt;br&gt;AddType application/x-asp-net .Config&lt;br&gt;AddType application/x-asp-net .dll&lt;br&gt;DirectoryIndex index.aspx&lt;br&gt;DirectoryIndex Default.aspx&lt;br&gt;DirectoryIndex default.aspx&lt;/code&gt;  &lt;p&gt;Por ultimo debemos comprobar que el modulo se encuentre en la direccion que pusimos en el archivo conf.&lt;/p&gt; &lt;p&gt;/usr/lib/httpd/modules/mod_mono.so&lt;/p&gt; &lt;p&gt;En caso de no ser asi podemos buscar el archivo con &lt;/p&gt; &lt;p&gt;%&amp;nbsp;find / -name mod_mono.so -print&lt;/p&gt; &lt;p&gt;Modificamos la ruta o en su caso copiamos el archivo.&lt;/p&gt; &lt;p&gt;Si queremos comprobar que esta funcionando mono en nuestro servidor apache copiamos la carpeta de test de mono a la carpeta de los documentos html que usamos normalmente:&lt;/p&gt;&lt;code&gt;&lt;strong&gt;cp /usr/lib/xsp/test /home/miusuario/public_html/&lt;/strong&gt;&lt;/code&gt;  &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-969497690135312037?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/969497690135312037/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=969497690135312037' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/969497690135312037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/969497690135312037'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/04/mono-en-un-vds-de-godaddy.html' title='Mono en un VDS de Godaddy'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7777071334429883877</id><published>2007-03-20T01:48:00.001-06:00</published><updated>2011-10-08T15:15:07.961-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Triara'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>Triara: Test de Php y MySQL</title><content type='html'>Con los siguientes scripts se puede hacer una pequeña prueba si todo esta funcionando en correctamente en Triara:&lt;br /&gt;&lt;code&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;Primero si php funciona:&lt;/code&gt;&lt;br /&gt;&lt;code&gt; &amp;lt;?php&lt;br /&gt;phpinfo();&lt;br /&gt;?&amp;gt;&lt;/code&gt; &lt;br /&gt;Una vez comprobado lo anterior:&lt;br /&gt;&lt;br /&gt;&lt;code&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;?php&lt;br /&gt;set_time_limit(3000);&lt;br /&gt;$link = mysql_connect ("172.16.253.90", "user", "pass")&lt;br /&gt;or die("Could not connect: " . mysql_error());&lt;br /&gt;print ("Connected successfully");&lt;br /&gt;mysql_select_db("basededatos") or die("Could not select database");&lt;br /&gt;$query = "Select * From tabla";&lt;br /&gt;$result = mysql_query($query) or die("Query failed");  &lt;/code&gt;&lt;br /&gt;&lt;code&gt;print "&amp;lt;table border=1 cellspacing=1&amp;gt;\n"&lt;br /&gt;for ($i = 0; $i &amp;lt; mysql_num_fields($result); $i++) {&lt;br /&gt;print "&amp;lt;th&amp;gt;".mysql_field_name($result, $i)."&amp;lt;/th&amp;gt;\n"&lt;br /&gt;}&lt;br /&gt;while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {&lt;br /&gt;print "\t&amp;lt;tr&amp;gt;\n"&lt;br /&gt;foreach ($line as $col_value) {&lt;br /&gt;print "\t\t&amp;lt;td&amp;gt;$col_value&amp;lt;/td&amp;gt;\n"&lt;br /&gt;}&lt;br /&gt;print "\t&amp;lt;/tr&amp;gt;\n"&lt;br /&gt;}&lt;br /&gt;print "&amp;lt;/table&amp;gt;\n"  &lt;/code&gt;&lt;br /&gt;&lt;code&gt;/* Free resultset */&lt;br /&gt;mysql_free_result($result);  &lt;/code&gt;&lt;br /&gt;&lt;code&gt;mysql_close($link);&lt;br /&gt;?&amp;gt;  &lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;nbsp; &lt;/code&gt; &lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7777071334429883877?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7777071334429883877/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7777071334429883877' title='4 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7777071334429883877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7777071334429883877'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/triara-test-de-php-y-mysql.html' title='Triara: Test de Php y MySQL'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6119083152553405941</id><published>2007-03-19T12:35:00.001-06:00</published><updated>2007-04-04T19:34:52.862-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='GoDaddy'/><title type='text'>Problemas de WordPress en Godaddy</title><content type='html'>&lt;p&gt;Estuve teniendo problemas con wordpress en el servidor que tengo de godaddy. Por alguna razon se estaba iendo la memoria por los cielos, y no encuentro hasta ahorita la razon. Es una combinacion de MySQL y de Java de Tomcat lo que esta ocasionando el problema.&lt;/p&gt; &lt;p&gt;El personal de GoDaddy, me dice que le meta mas memoria... pero la verdad me parece que 256Mb con swap de 700Mb, es mas que suficiente, entre por Putty al servidor y me tope con lo siguiente:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;code&gt; &lt;p&gt;login as: vgarcia&lt;br&gt;vgarcia@www.llanura.com's password:&lt;br&gt;Last login: Mon Mar 19 08:55:36 2007 from 189.129.143.64&lt;br&gt;-bash: /usr/bin/id: Too many open files in system&lt;br&gt;-bash: /usr/bin/id: Too many open files in system&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: error while loading shared libraries: libaudit.so.0: cannot open shared object file: Error 23&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: user root does not exist&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: incorrect password&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: incorrect password&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: error while loading shared libraries: libc.so.6: cannot open shared object file: Error 23&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: error while loading shared libraries: libaudit.so.0: cannot open shared object file: Error 23&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: error while loading shared libraries: libaudit.so.0: cannot open shared object file: Error 23&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;su: user root does not exist&lt;br&gt;[vgarcia@vds_godaddy ~]$ su&lt;br&gt;Password:&lt;br&gt;[root@vds_godaddy vgarcia]# cd /tmp&lt;br&gt;[root@vds_godaddy tmp]# ls&lt;br&gt;ls: error while loading shared libraries: librt.so.1: cannot open shared object file: Error 23&lt;br&gt;[root@vds_godaddy tmp]# ls&lt;br&gt;ls: error while loading shared libraries: librt.so.1: cannot open shared object file: Error 23&lt;br&gt;[root@vds_godaddy tmp]# ls&lt;br&gt;ls: error while loading shared libraries: libacl.so.1: cannot open shared object file: Error 23&lt;br&gt;[root@vds_godaddy tmp]# ls&lt;br&gt;ls: error while loading shared libraries: libpthread.so.0: cannot open shared object file: Error 23&lt;br&gt;[root@vds_godaddy tmp]# ls&lt;/p&gt;&lt;/code&gt; &lt;p&gt;En definita el servidor estaba tronando con el problema de la memoria, hasta el momento no encontre una buena solucion. Lo que si encontre es como detener el consumo irracional de java. Detuve Tomcat. No lo estaba usando. Asi que simplemente lo detuve y ademas ya lo quite de Bootup:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ProblemasdeWordPressenGodaddy_AFAC/image011.png" atomicselection="true"&gt;&lt;img height="27" src="http://www.llanura.com/imagenes/ProblemasdeWordPressenGodaddy_AFAC/image0_thumb7.png" width="576"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6119083152553405941?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6119083152553405941/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6119083152553405941' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6119083152553405941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6119083152553405941'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/problemas-de-wordpress-en-godaddy.html' title='Problemas de WordPress en Godaddy'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3548484680924510941</id><published>2007-03-15T14:43:00.001-06:00</published><updated>2007-07-16T18:39:19.357-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><title type='text'>Enlace Veracruzano - Administra tu propio sitio web con WordPress</title><content type='html'>&lt;p&gt;Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;abril con el artículo "&lt;b&gt;ADMINISTRA TU PROPIO SITIO WEB CON WORDPRESS&lt;/b&gt;", el cual estoy reproduciendo en las siguientes lineas:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;b&gt;ADMINISTRA TU PROPIO SITIO WEB CON WORDPRESS&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;/i&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;Administrar un sitio Web se ha vuelto cada vez más fácil, gracias a aplicaciones que cumplen con este propósito usando y basándose en tecnologías Web 2.0.&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;Existen varias herramientas que permiten que cualquier persona con un mínimo de conocimiento en el uso de computadoras y de aplicaciones ofimáticas, puedan crear, editar, y administrar un sitio Web. &lt;p&gt;WordPress comenzó como un sitio dedicado a realizar blogs, muy pronto pusieron el código fuente a disposición del público en general mediante una licencia de código abierto, logrando que desarrolladores interesados, mejoraran y ampliaran la herramienta. Lo anterior ha permitido que WordPress realice tareas para la cual no fue inicialmente diseñado. &lt;p&gt;El código de WordPress se puede instalar en cualquier servidor Web que existe en el mercado, sólo se requiere tener una base de datos y acceso a programar con PHP. Muchas empresas especializadas en dar servicios de hospedaje Web, cuentan con WordPress como una de sus funcionalidades en su servicio. &lt;p&gt;Una de las características más atractivas de WordPress es la posibilidad de usar plantillas de diseño, de esta manera el administrador se olvida de la parte del diseño y lo único que tiene que hacer es colocar la información que se desea agregar en el sitio Web. &lt;p&gt;Las plantillas de diseño de WordPress se pueden obtener de Internet, existen listas que cuentan con más de 500 diseños distintos, clasificados por colores, por número de columnas, por temas, etc. Seguramente se puede encontrar alguno que cumple con las necesidades que se tienen para el sitio web. &lt;p&gt;Además de las plantillas existen los plug-ins, que son módulos que se van agregando a la plataforma de WordPress, los cuales permites, por ejemplo tener contenido de otros sitios Web como noticias, pronósticos del tiempo, resultados de deportes, estadísticas financieras, etc.  &lt;p&gt;El desarrollo alrededor de WordPress es tan amplio, que existen plug-ins que permiten que se tenga diversas opciones desde foros de discusión, chats, encuestas, postales electrónicas, hasta la integración de comercio electrónico &lt;p&gt;El contenido se guarda en una base de datos, por lo que la información se puede respaldar, modificar, ampliar y compartir de una manera muy sencilla, ya que se guarda como texto sencillo. Se puede exportar a Word, Excel, PDF, etc. &lt;p&gt;Microsoft ha entendido la importancia de esta herramienta, por lo que incluye en la última versión, Word 2007, una sencilla forma de exportar los documentos escritos en esta para WordPress. &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3548484680924510941?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3548484680924510941/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3548484680924510941' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3548484680924510941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3548484680924510941'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/enlace-veracruzano-administra-tu-propio.html' title='Enlace Veracruzano - Administra tu propio sitio web con WordPress'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3787321443515709511</id><published>2007-03-15T14:41:00.001-06:00</published><updated>2007-07-16T18:39:19.357-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><title type='text'>Enlace Veracruzano - Respalda y comparte tus fotos en Internet</title><content type='html'>&lt;p&gt;Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de&amp;nbsp;Marzo con el artículo "&lt;b&gt;RESPALDA Y COMPARTE TUS FOTOS EN INTERNET&lt;/b&gt;", el cual estoy reproduciendo en las siguientes lineas:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;b&gt;RESPALDA Y COMPARTE TUS FOTOS EN INTERNET&lt;/b&gt;  &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;Los servicios gratuitos de Internet com Flickr de Yahoo!, pueden ayudarnos a mantener nuestras fotos respaldadas y al mismo tiempo con la posibilidad de compartirlas con nuestros amigos y familiares.&lt;/b&gt;  &lt;p&gt;En el año 2005 con el paso del huracán Stan, muchas personas sufrieron la perdida de sus bienes materiales, y en ocasiones de todo con lo que contaban en su casa. Entre ellos algo que es difícil de reponer son las fotos personales.  &lt;p&gt;Gran parte de lo que existe en una casa se puede comprar, reparar, seguramente con mucho esfuerzo, pero la foto de unos quince años, de un bebe recién nacido, de una boda, puede ser difícil de recuperar. Las fotos guardan nuestros recuerdos y de alguna manera las personas que somos.  &lt;p&gt;La mayoría de las personas guardan sus fotos en un álbum, o en su caso con la llegada de las fotografías digitales, en una computadora o un cd. Pero cuando la devastación llega a niveles como los últimos huracanes que se han formado en el golfo de México, es difícil que cualquiera de los anteriores se salven.  &lt;p&gt;Una forma sencilla de evitar lo anterior, es colocar las fotos en algún sitio de Internet para lo cual existen muchos sitios Web que prestan este servicio, ya sea gratuitamente o con un costo.  &lt;p&gt;Uno de estos, posiblemente el más famoso y mas usado es el de Flickr.com. Este sitio propiedad de Yahoo!, es muy fácil de usar, permite agregar en su servicio gratuito hasta 10 megas mensualmente, que se van agregando a lo usado en meses anteriores.  &lt;p&gt;Permite crear álbumes, clasificar las fotos, agregar comentarios y títulos a cada una de elas, es un servicio sencillo de usar que cuenta con algunos programas que se pueden instalar en Windows para que la forma de subir las fotos sea más rápido.  &lt;p&gt;Para compartir las fotos solo se requiere de proporcionar la dirección que nos indique Flickr, el usuario registrado puede seleccionar si las fotos son publicas, privadas y que tipo de permisos para su uso otorga a cada foto.  &lt;p&gt;Ya que cuenta con una forma de exponer las fotos mediante los llamados servicios Web, cualquier aplicación o sitio que tenga una forma de leer este servicio Web, puede incluir en alguna parte de su contenido las fotos que estamos colocando en Flickr, por ejemplo en myspace.com, algún blog personal o en el escritorio de windows.  &lt;p&gt;Y aunque Flickr no cuenta con el servicio de impresión para nuestro país, en Veracruz ya existen algunas negocios que permite el envió de los archivos a su buzón electrónico para realizar la impresión correspondiente en el tamaño que queramos, si la resolución de la foto lo permite. De esta manera nuestras fotos se encontraran seguras y listas para colocarse de nuevo en un marco en nuestro hogar.  &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3787321443515709511?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3787321443515709511/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3787321443515709511' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3787321443515709511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3787321443515709511'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/enlace-veracruzano-respalda-y-comparte.html' title='Enlace Veracruzano - Respalda y comparte tus fotos en Internet'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5665282353355769894</id><published>2007-03-15T12:11:00.001-06:00</published><updated>2007-03-15T18:35:07.342-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><title type='text'>Agregar Blogalaxia en WordPress</title><content type='html'>&lt;p&gt;Me llegó un comentario a uno de los posts:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Raul Jose ha dejado un nuevo comentario en su entrada "&lt;a href="http://llanura.blogspot.com/2007/02/wordpres-forma-de-contacto.html"&gt;WordPress - Forma de contacto&lt;/a&gt;": &lt;br&gt;Hola! Yo se que esta entrada no tiene que ver con esto, pero creo que podrias ayudarme. Me podrias explicar como pongo el sistema de ranking de Blogalaxia en Wordpress. Es que no entiendo sus instrucciones porque quieren que bregue con un archivo php que no se donde esta ni encuentro. Si me puedes ayudar, fenomenal! Gracias! &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Explicare brevemente como hacerlo, aunque me parece que estas instrucciones ya se encuentran en el mismo blogalaxia.  &lt;p&gt;En WordPress, buscamos el archivo al cual queramos ingresar nuestro codigo, no voy a explicar con detalle todos los archivos que corresponden de WordPress.  &lt;p&gt;Voy a usar el theme default de WordPress. Abro el archivo /wp-content/themes/default/index.php y en la seccion que mejor me acomode digamos despues del post agrego el siguiente codigo: &lt;code&gt; &lt;p&gt;&amp;lt;div align="center" class="votacion"&amp;gt;Vota por mi:&lt;br&gt;&amp;lt;iframe &lt;br&gt;src="&lt;a href="http://rank.blogalaxia.com/pbrate.php?color=000000&amp;amp;url="&gt;http://rank.blogalaxia.com/pbrate.php?color=000000&amp;amp;url=&lt;/a&gt;&amp;lt;?php &lt;br&gt;the_permalink(); ?&amp;gt;" width=70 height=15 &lt;br&gt;scrolling=no frameborder=0 marginheight=0 marginwidth=0 &lt;br&gt;style=.margin:0;padding:0.&amp;gt;&amp;lt;/iframe&amp;gt;&lt;/p&gt;&lt;/code&gt; &lt;p&gt;Preferentemente despues de la seccion:  &lt;p&gt;&lt;code&gt; &lt;p&gt;&amp;lt;!-- First Post --&amp;gt;&lt;br&gt;&amp;lt;?php $top_query = new WP_Query('showposts=1'); ?&amp;gt;&lt;br&gt;&amp;lt;?php while($top_query-&amp;gt;have_posts()) : $top_query-&amp;gt;the_post(); $first_post = $post-&amp;gt;ID; ?&amp;gt;  &lt;p&gt;&amp;lt;div class="post top" id="post-&amp;lt;?php the_ID(); ?&amp;gt;"&amp;gt;&lt;br&gt;&amp;lt;h2 class="first"&amp;gt;&amp;lt;a href="&amp;lt;?php the_permalink() ?&amp;gt;" rel="bookmark" title="Permanent Link to &amp;lt;?php the_title(); ?&amp;gt;"&amp;gt;&amp;lt;?php the_title(); ?&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/h2&amp;gt;&lt;br&gt;&amp;lt;span class="postmetadata"&amp;gt;&amp;amp;bull; &amp;lt;?php comments_popup_link(' Sin comentarios ', ' 1 Comentario ', ' % Comentarios '); ?&amp;gt; &amp;lt;?php edit_post_link('Editar', '(', ')'); ?&amp;gt;&amp;lt;/span&amp;gt;  &lt;p&gt;&amp;lt;div class="entry"&amp;gt;&lt;br&gt;&amp;lt;?php the_content("&amp;lt;span class=\"continue\"&amp;gt;" . __('Seguir leyendo','') . " '" . the_title('', '', false) . "'&amp;lt;/span&amp;gt;"); ?&amp;gt;&lt;br&gt;&amp;lt;/div&amp;gt;&lt;br&gt;&amp;lt;/div&amp;gt;  &lt;p&gt;&amp;lt;?php endwhile; ?&amp;gt; &lt;/code&gt; &lt;p&gt;&amp;nbsp;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5665282353355769894?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5665282353355769894/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5665282353355769894' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5665282353355769894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5665282353355769894'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/agregar-blogalaxia-en-wordpress.html' title='Agregar Blogalaxia en WordPress'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-920524566091415240</id><published>2007-03-05T14:02:00.001-06:00</published><updated>2007-03-15T18:36:48.766-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><title type='text'>Blogger -- modificando el ancho de las plantillas</title><content type='html'>&lt;p&gt;Recibi el siguiente correo el dia de hoy:&lt;/p&gt; &lt;blockquote cite="mid380-22007304131223923@cantv.net"&gt; &lt;p&gt;"Hola, por varios link llegue a su blog, y me fue muy util lo de como colocar en HTML las estrellitas de blogalaxia, se me paso dejar comentario.... Por casualidad no ha pensado en abrir una seccion de ayuda para blog, se de varios que pondran un link de su pag por los articulos (yo tambien) pero con un aparte para blog seria una referencia ideal...  &lt;p&gt;En realidad se me ocurre molestarle por lo siguiente (y es que no soy muy diestro en esto del HTML): La plantilla de mi blog (&lt;a href="http://www.el-buhonero-venezolano.blogspot.com"&gt;http://www.el-buhonero -venezolano.blogspot.com&lt;/a&gt;) es igual a la que usted tiene. He querido hacer un poco mas ancha la columna de la derecha y la columna donde redacto los post. Cree me pueda indicar que agrego (HTML) a la plantilla o que modifico para lograr esto. Un peticion mas: Es posible ponerle a la plantilla otra columna a la izquierda con las mismas caracteristicas de la derecha (supongo q si) como lo haria... Y ya no le molesto mas, blogger me dice que debo poner manualmente el feed del sitio (yo tengo aun version beta y segun ellos debo esperar para entrar a la nueva version) en ayuda de bloger dan los codigos HTML pero no se donde colocarlos dicen que entre &amp;lt;style&amp;gt; y &amp;lt;/style&amp;gt; pero no lo encuentro (solo &amp;lt;style&amp;gt;) aun expandiendo la plantilla de artilugios...  &lt;p&gt;Gracias por su tiempo y molestias,  &lt;p&gt;&lt;a href="http://www.el-buhonero-venezo lano.blogspot.com"&gt;www.el-buhonero-venezo lano.blogspot.com&lt;/a&gt;&amp;nbsp;"&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Tratare de clasificar un poco mas los posts, para crear una categoria de blogger.&lt;br&gt;En cuanto al ancho de las columnas...&lt;br&gt;Entrar al &lt;strong&gt;Tablero&lt;br&gt;&lt;/strong&gt;Seleccionar Pestaña "&lt;strong&gt;Plantilla&lt;/strong&gt;"&lt;br&gt;Opcion "&lt;strong&gt;Edicion de Html&lt;/strong&gt;"&lt;br&gt;Buscar: &lt;code&gt;&lt;br&gt;#sidebar-wrap {&lt;br&gt;&amp;nbsp; width:240px;&lt;br&gt;&amp;nbsp; float:right;&lt;br&gt;&amp;nbsp; margin:15px 0 0; &lt;/code&gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;Modificar el ancho, pero con la advertencia de que tambien debera modificarse...&lt;br&gt;&lt;code&gt;#main-wrap1 {&lt;br&gt;&amp;nbsp; width:485px;&lt;/code&gt;&lt;/p&gt; &lt;p&gt;Tratando de mantener&amp;nbsp;de jugar con el ancho total de la pagina&amp;nbsp;el cual esta indicado&amp;nbsp;en (240+15+485)(ancho+margen+ancho):&lt;/p&gt; &lt;p&gt;&lt;code&gt;#main-wrap {&lt;br&gt;&amp;nbsp; width:740px;&lt;/code&gt; &lt;p&gt;&lt;br&gt;Si se puede agregar una tercer columna, la cual requerida poner algo asi como &lt;br&gt;&lt;code&gt;#sidebar-wrap2 {&lt;br&gt;&amp;nbsp; width:240px;&lt;br&gt;&amp;nbsp; float:right;&lt;br&gt;&amp;nbsp; margin:15px 0 0;&lt;br&gt;&amp;nbsp; font-size:97%;&lt;br&gt;&amp;nbsp; line-height:1.5em;&lt;br&gt;&amp;nbsp; word-wrap: break-word; /* fix for long text breaking sidebar float in IE */&lt;br&gt;&amp;nbsp; overflow: hidden;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* fix for long non-text content breaking IE sidebar float */&lt;br&gt;&amp;nbsp; }&lt;/code&gt;&lt;/p&gt; &lt;p&gt;&lt;code&gt;Listo!&lt;/code&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-920524566091415240?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/920524566091415240/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=920524566091415240' title='4 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/920524566091415240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/920524566091415240'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/03/blogger-modificando-el-ancho-de-las.html' title='Blogger -- modificando el ancho de las plantillas'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2297519302522964359</id><published>2007-02-28T21:24:00.001-06:00</published><updated>2007-03-15T18:35:07.343-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><title type='text'>WordPress - Forma de contacto</title><content type='html'>&lt;p&gt;WordPress no cuenta con una forma sencilla de colocar una forma de envio, pero lo bueno es que existen por ahi muchos plug-ins, entre ellos uno que hace un buen trabajo en colocar una forma, de manera casi automatica. El problema de la misma, es que no cuenta con una versión en español.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="Secure and Accessible PHP Contact Form" href="http://green-beast.com/blog/?page_id=136"&gt;Secure and Accessible PHP Contact Form&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Realicé varias modificaciones para que se pudiera tener una forma sencilla con algunas variables en otro archivo para que se pudiera traducir, por lo menos la parte visible a los usuarios.&lt;/p&gt; &lt;p&gt;Agregue un nuevo archivo llamado wp-gbcf_labels.php, el cual es llamado por el original wp-gbcf_form.php.&lt;/p&gt; &lt;p&gt;El archivo para descargar se encuentra en Llanura.com:&lt;/p&gt; &lt;p&gt;&lt;strike&gt;http://www.llanura.com/archivos/wp-gbcf_es_incompleto.zip&lt;/strike&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;NOTA: Me contactaron de green-beast.com, pidiendome que dejara de distribuir esta version, dado que no es open source su licencia. Y que estaban trabajando en una version traducible.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Haciendo caso a su petición, he dejado de ponerla al publico en general y si enviar a quien me pida por email o por comentario, esta version.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2297519302522964359?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2297519302522964359/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2297519302522964359' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2297519302522964359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2297519302522964359'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/02/wordpres-forma-de-contacto.html' title='WordPress - Forma de contacto'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4026028216637310714</id><published>2007-01-30T20:10:00.001-06:00</published><updated>2007-03-15T18:38:57.607-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>AutoCompleteExtender en VB y usando Access</title><content type='html'>&lt;p&gt;He estado trabajando con la ultima version liberada&amp;nbsp;de &lt;a title="ASP.Net Ajax 1.0" href="http://ajax.asp.net"&gt;ASP.Net Ajax 1.0&lt;/a&gt; (ajax1), y despues de una noche de desvelo y un enlace de menos de 56kbps, encontré una manera de migrar el ejemplo que trae el&amp;nbsp; &lt;a href="http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=AtlasControlToolkit"&gt;ASP.Net Ajax Control Toolkit&lt;/a&gt; (ANACT), en particicular el que se refiere al autocompleteextender.&lt;/p&gt; &lt;p&gt;Algo importante, es eliminar todas las versiones que se hayan instalado con anterioridad a la version liberada, no haber hecho esto ultimo desde un inicio me ocasiono un par de jalones de cabello.&lt;/p&gt; &lt;p&gt;Lo primero es el servicio web desde donde se obtendra la informacion para el control:&lt;/p&gt; &lt;p&gt;------------------------------------------------------------------------------&lt;/p&gt; &lt;p&gt;&amp;lt;%@ WebService Language="VB" Class="WebService" %&amp;gt;  &lt;p&gt;Imports System.Web&lt;br&gt;Imports System.Web.Services&lt;br&gt;Imports System.Web.Services.Protocols&lt;br&gt;&lt;strong&gt;Imports System.Web.Script.Services&lt;/strong&gt;  &lt;p&gt;&amp;lt;WebService(Namespace:="&lt;a href="http://tempuri.org/&amp;quot;)"&gt;http://tempuri.org/")&lt;/a&gt;&amp;gt; _&lt;br&gt;&amp;lt;WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)&amp;gt; _&lt;br&gt;&lt;strong&gt;&amp;lt;ScriptService()&amp;gt; _&lt;br&gt;&lt;/strong&gt;Public Class WebService&lt;br&gt;Inherits System.Web.Services.WebService&lt;br&gt;&amp;lt;WebMethod()&amp;gt; _&lt;br&gt;Public Function obtenNombres( _&lt;br&gt;ByVal prefixText As String, _&lt;br&gt;ByVal count As Integer) _&lt;br&gt;As String()&lt;br&gt;If count = 0 Then&lt;br&gt;count = 10&lt;br&gt;End If  &lt;p&gt;Dim resultado() As String&lt;br&gt;Dim listaNombres As String = String.Empty  &lt;p&gt;Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\Webs\MIWEB\App_Data\Access.mdb"&lt;br&gt;Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString)  &lt;p&gt;Dim queryString As String = "SELECT DISTINCT TOP&amp;nbsp;" &amp;amp; count &amp;amp; "&amp;nbsp;([Pacientes].Nombre) &amp;amp; ' ' &amp;amp; ([Pacientes].ApellidoPaterno) AS NombreCompleto " &amp;amp; _&lt;br&gt;"FROM(Pacientes) WHERE(((Pacientes.Nombre) Like '" &amp;amp; prefixText &amp;amp; "%'))"&lt;br&gt;Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand&lt;br&gt;dbCommand.CommandText = queryString&lt;br&gt;dbCommand.Connection = dbConnection  &lt;p&gt;dbConnection.Open()&lt;br&gt;Dim dataReader As System.Data.IDataReader = dbCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection)  &lt;p&gt;While dataReader.Read()&lt;br&gt;listaNombres += dataReader("NombreCompleto") &amp;amp; vbLf&lt;br&gt;End While  &lt;p&gt;resultado = listaNombres.Split(vbLf)&lt;br&gt;Return resultado&lt;br&gt;End Function  &lt;p&gt;End Class &lt;p&gt;------------------------------------------------------------------------ &lt;p&gt;El webservice busca en el archivo de acceso los datos correspondientes en la tabla de usuarios (pacientes para este caso), y da como resultado solo los que se parecen al valor de prefixText. &lt;p&gt;Algo que se tiene que modificar de un webservice normal es agregar un atributo para que pueda ser usado por los componente de Ajax "&lt;strong&gt;&amp;lt;ScriptService()&amp;gt; &lt;/strong&gt;", que en el ejemplo esta con negritas. Antes de colocar el atributo de debe llamar al namespace "&lt;strong&gt;Imports System.Web.Script.Services&lt;/strong&gt;". &lt;p&gt;Estas dos lineas anteriores hacen la diferencia para que el control funcione correctamente. A continuacion la webform: &lt;p&gt;-------------------------------------------------------------------------- &lt;p&gt;&amp;lt;%@ Page Language="VB" %&amp;gt;&lt;br&gt;&lt;strong&gt;&amp;lt;%@ Register&lt;br&gt;Assembly="AjaxControlToolkit"&lt;br&gt;Namespace="AjaxControlToolkit"&lt;br&gt;TagPrefix="ajaxToolkit" %&amp;gt;&lt;/strong&gt;  &lt;p&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "&lt;a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;"&gt;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&lt;/a&gt;&amp;gt;  &lt;p&gt;&amp;lt;script runat="server"&amp;gt;  &lt;p&gt;&amp;lt;/script&amp;gt;  &lt;p&gt;&amp;lt;html xmlns="&lt;a href="http://www.w3.org/1999/xhtml&amp;quot;"&gt;http://www.w3.org/1999/xhtml"&lt;/a&gt; &amp;gt;&lt;br&gt;&amp;lt;head runat="server"&amp;gt;&lt;br&gt;&amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&lt;br&gt;&amp;lt;/head&amp;gt;&lt;br&gt;&amp;lt;body&amp;gt;&lt;br&gt;&amp;lt;form id="form1" runat="server"&amp;gt;&lt;br&gt;&amp;lt;asp:ScriptManager ID="ScriptManager1" runat="server" /&amp;gt;&lt;br&gt;&amp;lt;div class="demoarea"&amp;gt;&lt;br&gt;&amp;lt;div class="demoheading"&amp;gt;&lt;br&gt;&amp;lt;h2&amp;gt;&lt;br&gt;&amp;lt;span style="color: #990000; font-family: Calibri"&amp;gt;Demostracion de AutoComplete&amp;lt;/span&amp;gt;&amp;lt;/h2&amp;gt;&lt;br&gt;&amp;lt;p/&amp;gt;&lt;br&gt;&amp;lt;span style="font-family: Calibri"&amp;gt;Escribe algunos caracteres en este campo de texto.&lt;br&gt;El servicio web respondera con algunos registros de la base de datos.&lt;br&gt;&amp;lt;br /&amp;gt;&lt;br&gt;&amp;lt;/span&amp;gt;&lt;br&gt;&amp;lt;br /&amp;gt;&lt;br&gt;&amp;lt;asp:TextBox runat="server" ID="myTextBox" Width="300" autocomplete="off" /&amp;gt;&lt;br&gt;&lt;strong&gt;&amp;lt;ajaxToolkit:AutoCompleteExtender&lt;br&gt;runat="server" &lt;br&gt;ID="autoComplete1" &lt;br&gt;TargetControlID="myTextBox"&lt;br&gt;ServicePath="webservice.asmx" &lt;br&gt;ServiceMethod="obtenNombres"&lt;br&gt;MinimumPrefixLength="2" &lt;br&gt;CompletionInterval="1000"&lt;br&gt;EnableCaching="true"&lt;br&gt;CompletionSetCount="12" /&amp;gt; &lt;/strong&gt; &lt;p&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br&gt;// Work around browser behavior of "auto-submitting" simple forms&lt;br&gt;var frm = document.getElementById("aspnetForm");&lt;br&gt;if (frm) {&lt;br&gt;frm.onsubmit = function() { return false; };&lt;br&gt;}&lt;br&gt;&amp;lt;/script&amp;gt;&lt;br&gt;&amp;lt;/div&amp;gt;&lt;br&gt;&amp;lt;/div&amp;gt;&lt;br&gt;&amp;lt;/form&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&lt;br&gt;&amp;lt;/html&amp;gt; &lt;p&gt;----------------------------------------------------------------------- &lt;p&gt;Notese que se agregar el dll del ANACT como un registro de assembly, para poder usar la extension AutoCompleteExtender. &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4026028216637310714?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4026028216637310714/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4026028216637310714' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4026028216637310714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4026028216637310714'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/autocompleteextender-en-vb-y-usando.html' title='AutoCompleteExtender en VB y usando Access'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-949895367327762948</id><published>2007-01-23T14:54:00.001-06:00</published><updated>2007-03-15T18:38:57.607-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>ASP.Net Ajax liberado</title><content type='html'>&lt;p&gt;Por fin despues de varios meses de desarrollo y en particular de muchas versiones, el paquete de &lt;a title="Asp.Net Ajax" href="http://ajax.asp.net"&gt;Asp.Net Ajax&lt;/a&gt; versión 1.0 ha sido liberado.&lt;/p&gt; &lt;p&gt;El problema de tanta version CTP que hubo es que el proceso de publicar una aplicacion con ajax se fue complicando por la documentacion que tambien cambio en repetidas ocasiones.&lt;/p&gt; &lt;p&gt;Espero poder terminar ahora si algunos ejemplos que he estado desarrollando.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-949895367327762948?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/949895367327762948/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=949895367327762948' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/949895367327762948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/949895367327762948'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/aspnet-ajax-liberado.html' title='ASP.Net Ajax liberado'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8956241942560731995</id><published>2007-01-22T17:57:00.001-06:00</published><updated>2007-03-15T18:39:13.871-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><title type='text'>WordPress 2.1 Liberado</title><content type='html'>&lt;p&gt;Hace unas horas liberaron la version 2.1 de WordPress. La nueva versión se puede obtener de &lt;a href="http://www.wordpress.org"&gt;www.wordpress.org&lt;/a&gt;. Debido a que ultimamente lo he usado para la creacion de nuevos sitios web para los clientes, me di a la tarea de actualizar la versión que cargo en la computadora.&lt;/p&gt; &lt;p&gt;Una opcion que me gusto es el poder seleccionar una pagina en particular de nuestra lista de agregadas, como pagina frontal del sitio. Otra novedad es el que usando el argumento de &amp;lt;!--- more --&amp;gt; se corta la pagina en el momento que uno lo requiera.&lt;/p&gt; &lt;p&gt;No me gusto como quedo el editor, era mas sencillo de usar, es asi que hare la modificacion correspondiente.&lt;/p&gt; &lt;p&gt;Se comenta en la pagina de wordpress que existen algo asi como 50 bugs eliminados, y que el acceso a la informacion es más rapido.&lt;/p&gt; &lt;p&gt;Estoy trabajando en una version instalada de forma local, asi que me parecio que la velocidad es la misma, habria que ver con una version instalada en algun servidor remoto.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8956241942560731995?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8956241942560731995/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8956241942560731995' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8956241942560731995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8956241942560731995'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/wordpress-21-liberado.html' title='WordPress 2.1 Liberado'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5559043771097572106</id><published>2007-01-18T22:48:00.001-06:00</published><updated>2007-03-15T18:35:07.345-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><title type='text'>Plugins de Wordpress practicos</title><content type='html'>&lt;p&gt;He estado trabajando sobre un sitio para adultos en las ultimas semanas, y la verdad es que he encontrado que los siguiente plugins deben estar en toda instalacion de Wordpress que se haga:&lt;/p&gt; &lt;p&gt;&lt;a href="http://blog.jalenack.com/ajax/"&gt;Live Shout Box&lt;/a&gt;.- Es un tagboard o especie de chat, en verdad le pone dinamismo al sitio y se vuelve muy practico. Estoy basandome en este desarrollo para poder integrar un plugin para oscommerce.&lt;/p&gt; &lt;p&gt;&lt;a title="Sitio de FGallery" href="http://www.fahlstad.se/wp-plugins/fgallery/"&gt;FGallery&lt;/a&gt;.- Aun cuando el servidor en el que lo instale no cuenta con la libreria gd para graficos en php y por consiguiente tengo que estar subiendo las imagenes previas de forma manual, la verdad es que funciona de manera maravillosa.&lt;/p&gt; &lt;p&gt;&lt;a title="Social Bookmarking" href="http://www.dountsis.com/downloads/?cat=2"&gt;Social Bookmarking&lt;/a&gt;.- Este plugin pone en cada uno de las paginas que se tienen en wordpress de manera muy sencilla los link para los diferentes servicios de bookmarking. Perfectamente configurables y listo para usar. Lo unico que necesita es agregar algunos sitios en español, me pondre a trabajar... ;)&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5559043771097572106?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5559043771097572106/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5559043771097572106' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5559043771097572106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5559043771097572106'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/plugins-de-wordpress-practicos.html' title='Plugins de Wordpress practicos'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3690916415033812423</id><published>2007-01-17T22:20:00.001-06:00</published><updated>2007-03-15T18:37:16.284-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Windows Vista en Mexico</title><content type='html'>&lt;p&gt;La ciudad de mexico ha sido seleccionada uno de los puntos que estaran en la presentacion mundial de Windows Vista para este&amp;nbsp;30 de Enero.&lt;/p&gt; &lt;p&gt;El dia del lanzamiento se realizara con transmisiones de diferentes paises, los cuales seran grabados previamente en cada uno de los paises.&lt;/p&gt; &lt;p&gt;Microsoft esta realizando invitaciones a traves de correo electronico para participar en esta celebracion:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;"Sábado 27 de enero de 2007&lt;/strong&gt;&lt;br&gt;Plaza de la Constitución - Zócalo Capitalino &lt;br&gt;(junto al asta bandera)&lt;br&gt;México, D.F.&lt;br&gt;3:30 p.m. a 6:30 p.m.&lt;br&gt;&lt;em&gt;(Al terminar la formación de los logos, acompáñanos &lt;br&gt;a celebrar con un espectáculo de luz y sonido en el Zócalo)"&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;Listo!&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/12602009-3690916415033812423?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3690916415033812423/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3690916415033812423' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3690916415033812423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3690916415033812423'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/windows-vista-en-mexico.html' title='Windows Vista en Mexico'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5832924169516179534</id><published>2007-01-17T22:05:00.001-06:00</published><updated>2007-03-15T18:37:48.343-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><title type='text'>Directorios / Portales de sitios web en Veracruz</title><content type='html'>&lt;p&gt;A continuacion una lista de portales que he encontrado que estan directamente relacionados y que pueden ayudar con la busqueda de empresas y/o&amp;nbsp;servicios de Veracruz.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.veracruz.com.mx"&gt;www.veracruz.com.mx&lt;/a&gt;: creo el mas visitado, tiene mucha informacion turistica.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.porveracruz.com"&gt;www.porveracruz.com&lt;/a&gt;: es un portal muy sencillo, con mala navegacion,&amp;nbsp;pero que empieza a tener una buena cantidad de enlaces de informacion.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.antrito.com"&gt;www.antrito.com&lt;/a&gt;: un portal con informacion referente a antros de veracruz, pero que tiene unos foros de las escuelas en veracruz con mucho movimiento.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.veracruzturismo.com"&gt;www.veracruzturismo.com&lt;/a&gt;: con informacion no solo de restaurantes y sitios que visitar, sino un poco de informacion para realizar negocios en veracruz.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.portal.veracruz.gob.mx"&gt;portal.veracruz.gob.mx&lt;/a&gt;: es evidentemente del gobierno del estado, pero esta direccion en particular cuenta con algo de informacion de turismo.&lt;/p&gt; &lt;p&gt;Muchos de los sitios que encontre en realidad son empresas que presentan tours para turistas&amp;nbsp;dentro del estado.&lt;/p&gt; &lt;p&gt;Es cierto que existen los tradicionales directorios de yahoo, google y msn acerca de veracruz. Pero la idea es poner aquellos directorios realmente jarochos.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5832924169516179534?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5832924169516179534/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5832924169516179534' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5832924169516179534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5832924169516179534'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/directorios-portales-de-sitios-web-en.html' title='Directorios / Portales de sitios web en Veracruz'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-4137388396758512174</id><published>2007-01-15T22:33:00.001-06:00</published><updated>2007-03-15T18:38:57.608-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Controles .Net gratuitos y sencillos.</title><content type='html'>&lt;p&gt;Me tope con la siguiente direccion:&lt;/p&gt; &lt;p&gt;&lt;a title="http://www.dotnetrix.pwp.blueyonder.co.uk/controls.html" href="http://www.dotnetrix.pwp.blueyonder.co.uk/controls.html"&gt;http://www.dotnetrix.pwp.blueyonder.co.uk/controls.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Y tiene varios controles de pestañas que son muy faciles de usar.&lt;/p&gt; &lt;p&gt;Si eres programador, descargalos... &lt;/p&gt; &lt;p&gt;Estos tipos de controles, suelen volverse comerciales... :(&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-4137388396758512174?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/4137388396758512174/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=4137388396758512174' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4137388396758512174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/4137388396758512174'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/controles-net-gratuitos-y-sencillos.html' title='Controles .Net gratuitos y sencillos.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8511992129119734526</id><published>2007-01-15T22:29:00.001-06:00</published><updated>2007-03-15T18:35:07.346-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WordPress 2.0'/><title type='text'>Como hacer un blog exitoso.</title><content type='html'>&lt;p&gt;Hace unas semanas encontre un analisis de uno de los fundadores de Blogger.com, el cual menciona que los blogs mas visitados deben de cubrir ciertas caracteristicas.&lt;/p&gt; &lt;p&gt;Y una de las mas dificiles honestamente es publicar contenido fresco, actualmente gracias a Google Reader esto colocando algunos feeds de blogers que publican informacion sobre asp.net y wpf, y me doy cuenta que no publican mas alla de un post cada 3 o 4 dias.&lt;/p&gt; &lt;p&gt;Este es el problema del contenido sobre desarrollo, muchas veces no da tiempo de documentar codigo. Si cuando se tiene que hacer, es complicado, luego tener el tiempo de explicarlo. ¡Caray! Dificil...&lt;/p&gt; &lt;p&gt;&lt;strong&gt;2 veces al dia&lt;/strong&gt; es la cantidad magica para tener contenido, y personas suscritas a un feed. ¿2 veces al dia?. Uf... lo intentare!.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8511992129119734526?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8511992129119734526/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8511992129119734526' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8511992129119734526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8511992129119734526'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/como-hacer-un-blog-exitoso.html' title='Como hacer un blog exitoso.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5616185605318650041</id><published>2007-01-15T22:23:00.001-06:00</published><updated>2007-03-15T18:37:37.771-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>Apple iPhone</title><content type='html'>&lt;p&gt;Steve Jobs dice que el iPhone es una revolucion, y puede estar en lo cierto. No importa, que el Apple iPhone no llegue a ser el telefono mas vendido de todos los tiempo, lo cierto es que la interfaz, suena muy interesante, la cual consta de solo un boton. WOW!.&lt;/p&gt; &lt;p&gt;Tal vez el próximo paso sea una computadora de Un Solo boton. Y es ahi donde veo que el producto es revolucionario, asi como ha sucedido con los reproductores MP3,&amp;nbsp;era de esperarse que llegara a&amp;nbsp;los telefonos, y no creo que sea una batalla facil, porque existe mucha competencia en este mercado, Nokia, SonyEriccson, LG, Samsung, etc. Algunos de los cuales ya utilizan WIndows Mobile.&lt;/p&gt; &lt;p&gt;¿Se impondra Apple iPhone con su OSX?. No creo, pero la revolucion empieza, porque es indudable que muchos telefonos van a empezar a replicar la sencilla interface que tiene iPhone.&lt;/p&gt; &lt;p&gt;A los desarrolladores ¿Que nos queda por hacer?, creo que mucho. Aplicaciones realmente mobiles, y sobretodo con un mercado inmenso. ¿Quien no ha ido a cualquier pueblito de cualquier pais de latinoamerica y encontrado que alguien usa un telefono celular?, todo el mundo. &lt;/p&gt; &lt;p&gt;Se me ocurren, muchos escenarios en los cuales se puede aprovechar esta tecnologia, en especial la facilidad que pueda venir de utilizar esa interface, en muchos ambitos. &lt;/p&gt; &lt;p&gt;Un Boton!.... Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5616185605318650041?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5616185605318650041/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5616185605318650041' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5616185605318650041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5616185605318650041'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/apple-iphone.html' title='Apple iPhone'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5220444772963080016</id><published>2007-01-08T19:26:00.001-06:00</published><updated>2007-03-15T18:36:25.507-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><title type='text'>Servidor web Cassini con .Net 2.0 y en español</title><content type='html'>&lt;p&gt;A continuacion algunas modificaciones que hice al servidor web cassini, para una presentación en dias pasados.&lt;/p&gt; &lt;p&gt;Sigo en el desarrollo del sistema de consultorio medico, y hace algunos dias me pidio un doctor que le mostrará el avance. Le gusto y me comento si podria instalarlo en su PC cuando ya quedara listo, pero cuando prendio su maquina me di cuenta que tenia instalado Windows XP Home, y desgraciadamente no cuenta con IIS, y tampoco se puede instalar de manera sencilla (despues de muchos hackeos y respaldos con regedit). &lt;/p&gt; &lt;p&gt;Visual Studio 2005 trae una opcion para empaquetar Visual Web Server (Cassini) junto con la aplicacion web. Pero no asi, la version Exp&lt;/p&gt; &lt;p&gt;A traves de Cassini,&amp;nbsp;se puede operar un sitio web en una maquina de XP Home, el problema es que cuando se descarga de asp.net, el archivo compilado es con la version .Net 1.1.&lt;/p&gt; &lt;p&gt;Es asi que&amp;nbsp;me di a la&amp;nbsp;tarea de renovar el servidor con el framework 2.0 y en español.&lt;/p&gt; &lt;p&gt;Primero los requisitos:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Tener instalado Microsoft Visual C# Express Edition, descargable desde la pagina de Microsoft MSDN (&lt;a href="http://msdn.microsoft.com"&gt;http://msdn.microsoft.com&lt;/a&gt;).&lt;/li&gt; &lt;li&gt;Obtener una copia de Cassini desde el sitio &lt;a href="http://www.asp.net/Projects/Cassini/Download/"&gt;www.asp.net/Projects/&lt;b&gt;Cassini&lt;/b&gt;/Download/&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Lo siguiente&amp;nbsp;es descomprimir el archivo cassini.exe. El cual crea una carpeta en c:\cassini&lt;/p&gt; &lt;p&gt;A continuación abrimos Microsoft Visual C# Express Edition (MVC#). Creamos una libreria de clases (Dll).&lt;/p&gt; &lt;p&gt;Importamos a la carpeta &lt;strong&gt;properties&lt;/strong&gt; los siguientes archivos de c:\cassini...&lt;/p&gt; &lt;p&gt;AssemblyInfo.cs&lt;br&gt;ByteParser.cs&lt;br&gt;ByteString.cs&lt;br&gt;Connection.cs&lt;br&gt;Host.cs&lt;br&gt;Messages.cs&lt;br&gt;Request.cs&lt;br&gt;Server.cs&lt;/p&gt; &lt;p&gt;y el archivo cassini.snk al directorio raiz. Y ademas agregar las referencias de System.Drawing y System.Web.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image013.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="320" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb7.png" width="199" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Debe quedar algo parecido a lo anterior. Guardamos el proyecto en nuestros documentos, y finalmente creamos la solucion (F6),&amp;nbsp;tenemos nuestro archivo cassini.dll en la carpeta \Mis documentos\Visual Studio 2005\Projects\Cassini\Cassini\bin\Release.&lt;/p&gt; &lt;p&gt;Ahora vamos a crear el ejecutable. Cerramos el proyecto cassini y abrimos uno nuevo en esta ocasion tiene que ser una "Aplicacion Windows":&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image012.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="113" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb6.png" width="123" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Importamos el archivo CassiniWebServerMain.cs al proyecto&amp;nbsp;e importamos la libreria Cassini.dll, asi como System.Drawing.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image011.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="177" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb5.png" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Abrimos el archivo y modificamos las siguientes lienas de codigo:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;appDirLabel.Text = "&amp;amp;Directorio de Aplicacion:" &lt;/li&gt; &lt;li&gt;portLabel.Text = "&amp;amp;Puerto del servidor" &lt;/li&gt; &lt;li&gt;vrootLabel.Text = "Directorio &amp;amp;Raiz Virtual:"&lt;br&gt;browseLabel.Text = "Iniciar la aplicacion web:" &lt;/li&gt; &lt;li&gt;startButton.Text = "Iniciar" &lt;/li&gt; &lt;li&gt;stopButton.Text = "Detener" &lt;/li&gt; &lt;li&gt;ShowError("Directorio de aplicacion invalido"); &lt;/li&gt; &lt;li&gt;ShowError("Puerto invalido"); &lt;/li&gt; &lt;li&gt;ShowError("Directorio raiz virtual invalido");&lt;br&gt;"Cassini no pudo iniciar en el puerto " + portNumber + ".\r\n" +&lt;br&gt;"Posiblemente hay un confilcto con otro servidor web en el mismo puerto.");&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;El recurso del icono me estuvo dando problemas, como no me interesa el icono, simplemente comente la linea:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;//Icon = new Icon(Assembly.GetExecutingAssembly().GetManifestResourceStream("CassiniWebServerIcon"));&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Creamos el proyecto (F6) y se crea el ejecutable:CassiniWebServer.exe&lt;/p&gt; &lt;p&gt;Podemos copiar&amp;nbsp;este archivo en nuestra aplicacion web:&lt;/p&gt; &lt;p&gt;c:\inetpub\web\expediamedicus&lt;/p&gt; &lt;p&gt;y creamos un acceso con la siguiente modificacion:&lt;/p&gt; &lt;p&gt;"C:\Inetpub\Webs\expediamedicus\CassiniWebServer.exe" C:\Inetpub\Webs\expediamedicus 80&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image018.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="120" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb8.png" width="430" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;De esta manera podemos&amp;nbsp;arrancar la aplicacion desde la misma carpeta:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image027.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="189" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb15.png" width="294" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Se pueden realizar mas modificaciones de tal manera que solo quede una ventana pequeña con la aplicacion web correspondiente, por ejemplo:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image030.png" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="229" src="http://www.llanura.com/imagenes/ServidorwebCassinicon.Net2.0yenespaol_F4D0/image0_thumb16.png" width="366" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5220444772963080016?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5220444772963080016/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5220444772963080016' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5220444772963080016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5220444772963080016'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/servidor-web-cassini-con-net-20-y-en.html' title='Servidor web Cassini con .Net 2.0 y en español'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1671293129845315170</id><published>2007-01-08T18:24:00.001-06:00</published><updated>2007-03-15T18:37:37.784-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>¡No compres toner, compra la impresora nueva!</title><content type='html'>&lt;p&gt;Se compró en la empresa hace unos meses una impresora a color HP 2600n. Hemos estado trabajando muy a gusto con este equipo, la instalación fue la más sencilla y no ha dado problemas, esta impresora venia con sus 4 cartuchos de toner 3 de color y 1 negro.&lt;/p&gt; &lt;p&gt;Despues de varios meses de imprimir de manera responsable, sin gastar el toner, y tratando de equilibrar el uso de los colores, era evidente que teniamos que terminar por comprar nuevamente cartuchos.&lt;/p&gt; &lt;p&gt;Pase la semana pasada a un officedepot, busque la sección de consumibles y sin pensarlo agarre una caja de cada color, compre los cartuchos originales para no tener problemas.&lt;/p&gt; &lt;p&gt;Y vaya sorpresa que me lleve a la hora de pagar:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Toner Cyan&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $1,199.00 &lt;/li&gt; &lt;li&gt;Toner Amarillo&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $1,199.00&lt;/li&gt; &lt;li&gt;Toner Magenta&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $1,199.00&lt;/li&gt; &lt;li&gt;Toner Negro&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $1,299.00&lt;/li&gt; &lt;li&gt;TOTAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;&amp;nbsp;&amp;nbsp;$4,899.00&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;&lt;font size="1"&gt;(Datos de &lt;/font&gt;&lt;a title="Office Depot" href="http://officedepot.com.mx"&gt;&lt;font size="1"&gt;officedepot.com.mx&lt;/font&gt;&lt;/a&gt;)&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Al momento de subirme al carro reaccioné, recordé el precio original de la impresora&amp;nbsp;y me di cuenta que habia hecho una tonteria. &lt;/p&gt; &lt;p&gt;Resulta que el costo&amp;nbsp;de los consumibles es mas alto que la impresora nueva incluido los toners.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;HP 2600n Laser Color NUEVA&amp;nbsp;&lt;strong&gt; $4,799.00&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Estoy realmente sorprendido, para la proxima ocasion, compraré la impresora nueva. Seguramente sera mas rápida y mas facil de usar.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1671293129845315170?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1671293129845315170/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1671293129845315170' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1671293129845315170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1671293129845315170'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/no-compres-toner-compra-la-impresora.html' title='¡No compres toner, compra la impresora nueva!'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5992392231193018769</id><published>2007-01-03T12:53:00.001-06:00</published><updated>2007-03-15T18:37:03.542-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><title type='text'>Ganador: Ubuntu 6.10</title><content type='html'>&lt;p&gt;Llevo un par de meses tratando de instalar una versión de linux en una PC armada. Esta PC tenia una versión de Windows XP Pirata, y a raiz de que no se le podia instalar algunas nuevas versiones de software y las actualizaciones del service pack 2. Decidí salir de la piratería y poner una versión de linux que funcionará.&lt;/p&gt; &lt;p&gt;Lo primero que intenté fue instalar &lt;a title="Ubuntu Linux" href="http://www.ubuntu.com"&gt;Ubuntu 5.1&lt;/a&gt;, pero tuve muchos problemas para la parte gráfica, ni siquiera terminaba el proceso de instalación.&lt;/p&gt; &lt;p&gt;La segunda opcion fue la nueva version de &lt;a title="openSUSE" href="http://www.opensuse.org"&gt;openSuse&lt;/a&gt;, la cual esta apoyada por Novell y menciona una serie de funcionalidades como la integracion de Beagle. Por otra parte he visto que &lt;a href="http://es.wikipedia.org/wiki/Miguel_de_Icaza"&gt;Miguel De Icaza&lt;/a&gt; usa esta versión de Linux, asi que intente instalarlo, aun cuando si termino de instalarse, cuando entraba al login, se colgaba y no pasaba de ahi.&lt;/p&gt; &lt;p&gt;La tercera opción fue instalar &lt;a href="http://fedora.redhat.com"&gt;Fedora&lt;/a&gt;, con el mismo resultado que openSuse, la verdad para este momento ya me habia cansado de estar bajando los isos, quemarlos en cds, llevarlos a donde estaba la computadora, estar esperando que se instalaran, etc., etc.&lt;/p&gt; &lt;p&gt;Deje que pasara diciembre y me olvide del asunto, en una laptop, tenía instalado Ubuntu 5.10 y el dia 30 me puse a actualizar algunos paquetes en especial lo que era mysql y php para realizar una presentacion en unos dias de &lt;a href="http://www.oscommerce.org"&gt;OSCommerce&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Termine actualizando todo el sistema operativo a 6.10, y con el disco ya en mi manos me dirigí a la oficina donde se encontraba la PC.&lt;/p&gt; &lt;p&gt;Y por fin un ganador, la instalación fue lenta, lenta, lenta, pero segura. La PC por fin tiene un sistema operativo. Ahora lo que resta es ponerle FacturaLux.&lt;/p&gt; &lt;p&gt;Me ha gustado mucho la facilidad de la instalación y por supuesto la sencillez en que se agrega&amp;nbsp;y se quitan programas open source, desde el menu. Definitavamente un ganador esta versión.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5992392231193018769?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5992392231193018769/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5992392231193018769' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5992392231193018769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5992392231193018769'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2007/01/ganador-ubuntu-610.html' title='Ganador: Ubuntu 6.10'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3018896783908680935</id><published>2006-12-27T18:32:00.000-06:00</published><updated>2007-03-15T18:37:03.543-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><title type='text'>WebOS Mexicano: Desktoptwo.com - computadora.de</title><content type='html'>Hoy estuve revisando buscando algún directorio de aplicaciones opensource realizadas en México, y no encontré mucho, pero me tope con &lt;a href="http://www.sapotek.com/"&gt;Sapotek.com&lt;/a&gt;, una empresa fundada en México y EEUU, con la idea de crear un WebOS, el cual ha empezado a llamar la atención.&lt;br /&gt;&lt;a href="http://www.desktoptwo.com/"&gt;Desktoptwo.com&lt;/a&gt; es actualmente el proyecto mas importante de Sapotek.com, el cual esta listado junto con YouOS y EyeOS, como uno de los sitios web mas útiles por la revista &lt;a href="http://www.pcworld.com/article/id,128248-page,14-c,sites/article.html"&gt;PC World&lt;/a&gt;.&lt;br /&gt;De inicio me agrada la idea que dentro de la lista de desarrolladores haya mexicanos. La segunda es que es un proyecto gratuito. Me gustaría que tambien pusieran el código fuente de las aplicaciones.&lt;br /&gt;Por ahí también me topé con un artículo en el que se critica el WebOS: &lt;a href="http://blog.mastermaq.ca/archive/2005/08/29/4575.aspx"&gt;Why WebOS won't happen!&lt;/a&gt;&lt;br /&gt;Los puntos de este post son válidos, pero creo que estamos en el inicio de cosas por venir, por ejemplo el hecho de que Google haya comprado varios proyectos de aplicaciones web y los cuales ya pueden ser usados como aplicaciones en linea, es cierto que para estos se requiere una conexión de internet del tipo de ADSL y/o ADSL2 permanente y de buena velocidad, pero habría que pensar que en el mundo empresarial puede tener un nicho de mercado muy interesante.&lt;br /&gt;Por ejemplo, tener un servidor GoogleOS (en venta en el 2008... ;) ) con máquinas sencillas con  miniLinux y Firefox 2, digamos terminal tonta, que pueda estar ejecutando todas la aplicaciones que se requieren en una empresa PYME.&lt;br /&gt;De esta manera los archivos resguardados en un servidor central. Como siempre, viene la discusión de si queremos regresar a un modelo centralizado o a un modelo cliente-servidor, pero honestamente con la cantidad de virus que existen en el mercado y todos los archivos spamm que circulan, no estaría de mas hacer una evaluación y revisar una propuesta de este tipo.&lt;br /&gt;Es cierto que para las funciones de render de animación, trabajo de diseño y soluciones CAD, es difícil, pensar en miniLinux, pero para operaciones de telemarketing, o empresas de gestiones de cobranza, contabilidad, etc., lo anterior acomoda perfectamente.&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3018896783908680935?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3018896783908680935/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3018896783908680935' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3018896783908680935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3018896783908680935'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/webos-mexicano-desktoptwocom.html' title='WebOS Mexicano: Desktoptwo.com - computadora.de'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5274049491606498051</id><published>2006-12-27T13:47:00.000-06:00</published><updated>2007-07-16T18:39:19.358-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><title type='text'>5 RAZONES DE TENER UNA PRESENCIA WEB</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;No hace mucho tiempo si deseaba comprobar el horario de una película, consultaría el periódico local. Si deseaba encontrar a alguien para remodelar un cuarto de baño, abriría la Sección Amarilla. Pero para un número cada vez mayor de consumidores, esos hábitos son tan anticuados como los discos de acetato y el radio de transistores.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Hoy, los consumidores de todas las edades y de diferentes niveles económicos, casi 20 millones en México, utilizan el Internet para obtener información sobre un vendedor, servicio o producto.&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Las horas de oficina están limitadas, pero las aplicaciones en un sitio Web permiten que estemos disponibles para ellos 24 horas al día, siete días a la semana. Cuando la gente va a su sitio Web, los clientes pueden ver imágenes y detalles del producto. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Claramente hay numerosas razones por las que incluso el más pequeño de negocios puede beneficiarse de una presencia en el Web, pero aquí están cinco consideraciones dominantes:&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0cm;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Visibilidad&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;: Con cada vez más consumidores entrando      al Web para investigar productos y servicios, si desea que encuentren su      negocio, su negocio necesita estar en el Web. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Alcance&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;: Con un Sitio Web, la base de clientes no      te limitan a que esté en proximidad física a tu tienda. El lugar del      negocio puede estar en Veracruz, pero los clientes pueden estar en      Chihuahua.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Atención      al cliente&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;: Cuando los      clientes pueden entrar al sitio Web y encuentran fácilmente la información      que desean y cuando la desean, su satisfacción por ser cliente aumenta. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Competencia&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;: Un sitio Web profesional puede disminuir      las diferencias de las compañías más pequeñas que intentan competir contra      empresas más grandes. Por otra parte, si la gente no puede encontrar su      empresa en el Web, seguramente podrán encontrar a los competidores. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Confianza:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;" lang="ES"&gt; Cuando menciona a clientes, socios,      incluso empleados o a inversionistas potenciales sobre su sitio Web, les      dice que es un negocio serio.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Hace algún tiempo tener un sitio Web habría estado fuera del alcance para muchas pequeñas, pero el tiempo y el costo asociado a tener un sitio Web se ha beneficiado por servicios con plantillas predefinidas, que hacen que el proceso de construir un sitio Web sea rápido, los dueños y los encargados de la pequeña empresa, con absolutamente ningunas habilidades técnicas o de diseño pueden ahora crear un sitio Web profesional con un esfuerzo mínimo.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style="font-family: Arial;" lang="ES"&gt;Hay un montón de razones que obligan a las pequeñas empresas hoy tener una presencia Web. Pero con el advenimiento de servicios fáciles de utilizar, costos menores y en ocasiones hasta gratuitos &lt;b style=""&gt;es difícil tener una razón para NO tener una presencia Web.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Listo!&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/12602009-5274049491606498051?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5274049491606498051/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5274049491606498051' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5274049491606498051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5274049491606498051'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/5-razones-de-tener-una-presencia-web.html' title='5 RAZONES DE TENER UNA PRESENCIA WEB'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7627079659316307930</id><published>2006-12-21T15:54:00.000-06:00</published><updated>2006-12-21T16:40:23.330-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Internet de Mexico'/><title type='text'>¿www.internet.com.mx?</title><content type='html'>Continuando con el post anterior, me puse a navegar para ver si encontraba rastro de la empresa en la que trabaje por casi 3 años, cuando Internet de México S.A. de C.V. era una de las empresas pioneras en nuestro país.&lt;br /&gt;Encuentro que la empresa no existe, que el dominio me remite a otra empresa, que pareciera que solo imagine ese época. Tampoco encontré información de uno de los dueños, director de la empresa, Ing. Guillermo Vázquez Alvarez. Si encontré información de Ramón Santoyo, otro de los fundadores de la empresa, quien sigue siendo un ávido radio aficionado (&lt;a href="http://www.xe1kk.net/"&gt;http://www.xe1kk.net/&lt;/a&gt;), pero no menciona nada de Internet.&lt;br /&gt;Me enteré que la empresa fué vendida un par de años después de que labore en la misma, cuando la burbuja de Internet estaba en su pico, cuando prodigy empezaba a llegar a los primeros cientos de miles de usuarios (otro día para esta historia).&lt;br /&gt;Decidí ponerme a investigar un poco mas, encontré la página personal de mi Jefa cuando recien entre a la empresa, en este caso &lt;a href="http://www.laurabarragan.com.mx/"&gt;Laura Barragán&lt;/a&gt;, la cual radica en Querétaro y ahora parece estar dedicada a la fotografía. Mauricio Pfeiffer que fuera el diseñador, es Director Creativo de &lt;a href="http://www.cacto.com/"&gt;Cacto.com&lt;/a&gt;, con quien conformé un buen equipo en su momento.&lt;br /&gt;Me pregunto si existe todavía alguien que cuenta con algún correo con este dominio: @mail.internet.com.mx&lt;br /&gt;¡Caray!, que bonito se leía, era muy preciso el correo, esa dirección lo dice todo, no era necesario explicar ese correo electrónico,  sobretodo al entregar una tarjeta de presentación.&lt;br /&gt;¿Conoces a alguien usando este dominio?&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7627079659316307930?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7627079659316307930/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7627079659316307930' title='3 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7627079659316307930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7627079659316307930'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/wwwinternetcommx.html' title='¿www.internet.com.mx?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6934627702205749990</id><published>2006-12-20T23:16:00.001-06:00</published><updated>2006-12-20T23:16:23.895-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Internet de Mexico'/><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><title type='text'>Webmaster hace 10 años, muerte al Web 1.0</title><content type='html'>&lt;p&gt;Para estas fechas hace 10 años era Webmaster de Internet de Mexico S.A. de C.V., empresa que habia comenzado con modems de 14bps y enlaces de ancho de banda de E1.&lt;/p&gt; &lt;p&gt;En aquella época lo más práctico era realizar las páginas en html y uno que otro script de perl, pero la verdad los equipos tronaban si la carga de acceso y la ejecución de los&amp;nbsp;CGIs eran muchas.&lt;/p&gt; &lt;p&gt;Solo se usaba un fondo para toda la pagina, lo mas pequeño y repetido como mosaico, y claro todo el mundo quería su logo como fondo, o en su caso queria que el logo diera vueltas.&lt;/p&gt; &lt;p&gt;¡Vaya ideas!, lo peor es que todavia hay quien quiere que su logo de vueltas o en su caso quiere una animacion de flash...&lt;/p&gt; &lt;p&gt;Realizabamos un sitio web cada 2 o 3 días, entre los clientes que llegamos a tener estaba bancomer.com.mx, vips.com.mx y cientos de empresas medianas y pequeñas que en este momento no recuerdo.&lt;/p&gt; &lt;p&gt;Nada que ver con las opciones de ahora usando LAMP o WISA en clusters y con procesadores virtualizados o en su caso con varios procesadores. ¡Que hubiera dado por un giga de memoria, era carisimo! &lt;p&gt;La verdad es que no extraño esa manera de crear sitios, era completamente talachero el trabajo. Era perder el tiempo en lograr que el texto quedara justificado o la derecha, y en cada archivo, y si el sitio tenia 20 páginas... &lt;p&gt;Espero realmente que las empresas usen el poderio de Web 2.0.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6934627702205749990?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6934627702205749990/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6934627702205749990' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6934627702205749990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6934627702205749990'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/webmaster-hace-10-aos-muerte-al-web-10.html' title='Webmaster hace 10 años, muerte al Web 1.0'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3635245861515261028</id><published>2006-12-20T21:25:00.001-06:00</published><updated>2006-12-20T21:25:52.274-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSCommerce'/><title type='text'>OSCommerce - Listado de productos por fabricante en sección administrador</title><content type='html'>&lt;p&gt;Después de varias horas de estar haciendo pruebas para que quedará la modificación en la instalación de oscommerce para un cliente, por fin termine con el código. No es perfecto, pero funciona.&lt;/p&gt; &lt;p&gt;La petición fue la siguiente: realizar búsquedas en la sección del catalogo, ya sea por el modelo del producto o por el fabricante (marca) del mismo.&lt;/p&gt; &lt;p&gt;Para la búsqueda en el campo search utilicé una contribución, que ya estaba en &lt;a href="http://oscommerce.org"&gt;oscommerce.org&lt;/a&gt;: &lt;a href="http://www.oscommerce.com/community/contributions,1648/"&gt;Admin Categories/Products Search Improvement&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Para el segundo caso, no encontré algo que funcionará, vi un post en el foro que mencionaba que ya habia contribuciones, pero o no la encontré o no estaba lo que necesitaba.&lt;/p&gt; &lt;p&gt;Manos al código y aqui las instrucciones, son varios pasos y en realidad el unico archivo que modifique fue /catalog/admin/categories.php:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Incluir el arreglo para el combobox. Aproximadamente en la linea 742.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;br&gt;&lt;/li&gt; &lt;p&gt;if (isset($HTTP_GET_VARS['pID'])) {&lt;br&gt;echo tep_image_submit('button_update.gif', IMAGE_UPDATE);&lt;br&gt;} else {&lt;br&gt;echo tep_image_submit('button_insert.gif', IMAGE_INSERT);&lt;br&gt;}&lt;br&gt;echo '&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&amp;amp;pID=' . $HTTP_GET_VARS['pID'] : '')) . '"&amp;gt;' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '&amp;lt;/a&amp;gt;';&lt;br&gt;?&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;lt;/tr&amp;gt;&lt;br&gt;&amp;lt;/table&amp;gt;&amp;lt;/form&amp;gt;&lt;br&gt;&amp;lt;?php&lt;br&gt;}&lt;br&gt;} else { &lt;p&gt;AGREGAR:&lt;br&gt; &lt;p&gt;//Listado Fabricante &lt;br&gt;$manufacturers_array = array(array('id' =&amp;gt; '', 'text' =&amp;gt; TEXT_NONE));&lt;br&gt;$manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");&lt;br&gt;while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {&lt;br&gt;$manufacturers_array[] = array('id' =&amp;gt; $manufacturers['manufacturers_id'],&lt;br&gt;'text' =&amp;gt; $manufacturers['manufacturers_name']);&lt;br&gt;}&lt;br&gt;// ********* &lt;li&gt;Incluir el combobox en la forma. Aproximadamente linea 782.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;br&gt;&lt;/li&gt; &lt;p&gt;&amp;lt;?php&lt;br&gt;echo tep_draw_form('goto', FILENAME_CATEGORIES, '', 'get');&lt;br&gt;echo HEADING_TITLE_GOTO . ' ' . tep_draw_pull_down_menu('cPath', tep_get_category_tree(), $current_category_id, 'onChange="this.form.submit();"');&lt;br&gt;&lt;br&gt;AGREGAR:&lt;br&gt;&lt;br&gt;//Listado fabricante &lt;p&gt;echo TEXT_PRODUCTS_MANUFACTURER . ' ' . tep_draw_pull_down_menu('mID', $manufacturers_array, $HTTP_GET_VARS['mID'], 'onChange="this.form.submit();"') . '&amp;lt;br&amp;gt;';  &lt;li&gt;Agregamos una condicional para el caso de tener un id de fabricante. Aproximadamente linea 806.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;br&gt;&lt;/li&gt; &lt;p&gt;$categories_count = 0;&lt;br&gt;$rows = 0;&lt;br&gt;if (isset($HTTP_GET_VARS['search'])) {&lt;br&gt;$search = tep_db_prepare_input($HTTP_GET_VARS['search']);&lt;br&gt;$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id, c.sort_order, c.date_added, c.last_modified from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and cd.categories_name like '%" . tep_db_input($search) . "%' order by c.sort_order, cd.categories_name");&lt;br&gt;&lt;br&gt;AGREGAR: &lt;p&gt;//Listado Fabricante&lt;br&gt;} elseif (isset($HTTP_GET_VARS['mID'])) {&lt;br&gt;$manufacturer = tep_db_prepare_input($HTTP_GET_VARS['mID']);&lt;br&gt;$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id, c.sort_order, c.date_added, c.last_modified from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and cd.categories_name like '%" . tep_db_input($manufacturer) . "%' order by c.sort_order, cd.categories_name");&lt;br&gt;// **** &lt;li&gt;Modificamos una condicional existente para agregar una subcategoria. Aproximadamente linea 824.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;/li&gt; &lt;p&gt;if (isset($HTTP_GET_VARS['search'])) $cPath= $categories['parent_id'];&lt;br&gt;&lt;br&gt;REEEMPLAZAR CON:&lt;br&gt;&lt;br&gt;//Listado Fabricantes&lt;br&gt;if (isset($HTTP_GET_VARS['search']) or isset($HTTP_GET_VARS['mID'])) $cPath= $categories['parent_id'];&lt;br&gt; &lt;li&gt;&amp;nbsp;Agregamos una condicional para la busqueda de los productos. Aproximadamente linea 847.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;br&gt;&lt;/li&gt; &lt;p&gt;&amp;lt;?php&lt;br&gt;}  &lt;p&gt;$products_count = 0;&lt;br&gt;if (isset($HTTP_GET_VARS['search'])) {&lt;br&gt;$products_query = tep_db_query("select p.products_id, pd.products_name, p.products_quantity, p.products_image, p.products_price, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p2c.categories_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and p.products_id = p2c.products_id and (pd.products_name like '%" . tep_db_input($search) . "%' or p.products_model like '%" . tep_db_input($search) . "%') order by pd.products_name");&lt;br&gt;&lt;br&gt;AGREGAR:&lt;br&gt; &lt;p&gt;//Listado Fabricantes &lt;br&gt;} elseif (isset($HTTP_GET_VARS['mID'])) {&lt;br&gt;$products_query = tep_db_query("select m.manufacturers_id, p.manufacturers_id, p.products_id, pd.products_name, p.products_quantity, p.products_image, p.products_price, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['mID'] . "' order by pd.products_name");&lt;br&gt;// *************  &lt;li&gt;Colocamos codigo para encontrar el id de la categoria segun el producto seleccionado. Aproximadamente linea 868.&lt;br&gt;&lt;br&gt;BUSCAR:&lt;br&gt;&lt;/li&gt; &lt;p&gt;// Get categories_id for product if search&lt;br&gt;if (isset($HTTP_GET_VARS['search'])) $cPath = $products['categories_id']; &lt;br&gt;&lt;br&gt;AGREGAR: &lt;p&gt;// Listado Fabricante&lt;br&gt;// Get categories_id for product if manufacturers&lt;br&gt;if (isset($HTTP_GET_VARS['mID'])) {&lt;br&gt;$category_manufacturer_query = tep_db_query("select p2c.products_id, p2c.categories_id from " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p2c.products_id = " . $products['products_id'] );&lt;br&gt;$category_manufacturer = tep_db_fetch_array($category_manufacturer_query);&lt;br&gt;$cPath = $category_manufacturer['categories_id'];&lt;br&gt;}&lt;br&gt;// ***************** &lt;/p&gt;&lt;/ol&gt; &lt;p&gt;La contribución ya esta en oscommerce.org &lt;a title="http://www.oscommerce.com/community/contributions,4746" href="http://www.oscommerce.com/community/contributions,4746"&gt;http://www.oscommerce.com/community/contributions,4746&lt;/a&gt; &lt;p&gt;Listo! &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3635245861515261028?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3635245861515261028/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3635245861515261028' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3635245861515261028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3635245861515261028'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/oscommerce-listado-de-productos-por.html' title='OSCommerce - Listado de productos por fabricante en sección administrador'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5990872405200079405</id><published>2006-12-19T17:00:00.001-06:00</published><updated>2006-12-19T17:00:54.589-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>¿Yo, persona del año?</title><content type='html'>&lt;p&gt;Eso es lo que dice la revista Time, que los usuarios de internet que contribuyen de cierta forma al crecimiento de la información en Internet son realmente las personas del año.&lt;/p&gt; &lt;p&gt;Aunque me parece un tanto halagador considerar a todos los que de alguna forma contribuimos con informacion, con preguntas, con respuestas, con fotos, con videos, etc., como los renovadores de un momento en la historia, la verdad es que existe gente que sí se merece el premio,&amp;nbsp;pero el problema es que&amp;nbsp;en los considerados paises del occidente, durante el 2006, no hubo alguien que en realidad impactará de forma global.&lt;/p&gt; &lt;p&gt;Los hubo, el presidente &lt;a href="http://en.wikipedia.org/wiki/Mahmoud_Ahmadinejad"&gt;Mahmoud Ahmadinejad&lt;/a&gt;&amp;nbsp;de Irán con su fuerza política, con una posibilidad de hegemonia a traves del Medio Oriente; el&amp;nbsp;presidente de China &lt;a href="http://en.wikipedia.org/wiki/Hu_Jintao"&gt;Hu Jintao&lt;/a&gt;&amp;nbsp; con todas las negociaciones de comercio en todos los continentes; el mismo &lt;a href="http://en.wikipedia.org/wiki/Hugo_Chavez"&gt;Hugo Chavez&lt;/a&gt; con su comentarios en la ONU y el control sobre el petroleo; Norcorea y las explosiones nucleares dirigidas por su lider &lt;a href="http://en.wikipedia.org/wiki/Kim_Jong-il"&gt;Kim Jong-il&lt;/a&gt;; entre otros.&lt;/p&gt; &lt;p&gt;Pero tal como lo expone la revista Time, los medios estan siendo eliminados del panorama. Y tal vez en el futuro la persona del año no sea votada por una revista, si no por las mismas personas que estan actualmente accesando a internet. Cierto que la diferencia en el acceso que tenemos muchos paises, comparados con los de "Primer Mundo", son grandes, pero poco a poco las diferencias se acortaran, no por el hecho de que las economias se vayan a igualar, simplemente porque el crecimiento de los servicios de comunicacion avanzan de manera vertiginosa.&lt;/p&gt; &lt;p&gt;Lo anterior y servicios que utilizan la llamada tecnología Web 2.0, que no es mas que usar Internet de una nueva forma, haciendo que la participación de cualquier usuario sea más activa y en ocasiones completamente proactiva, esto&amp;nbsp;es&amp;nbsp;lo que esta posibilitando el cambio. Tal vez, ahora que lo pienso la revista no esta tán equivocada.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5990872405200079405?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5990872405200079405/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5990872405200079405' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5990872405200079405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5990872405200079405'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/yo-persona-del-ao.html' title='¿Yo, persona del año?'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8257368150402116662</id><published>2006-12-13T18:46:00.001-06:00</published><updated>2006-12-13T18:46:07.887-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Office 2007 y el Listón</title><content type='html'>&lt;p&gt;The Ribbon o Listón o Cintilla en español, es la característica a notar en la nueva versión de Office. Después de que mucho usuarios no encuentran las miles de opciones de Office, Microsoft reinventa la interfaz de usuario y pone a la vista las opciones mas populas y otras no tanto, pero muy útiles.&lt;/p&gt; &lt;p&gt;Excel:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Office2007yelListn_107C7/image06.png" atomicselection="true"&gt;&lt;img height="127" src="http://www.llanura.com/imagenes/Office2007yelListn_107C7/image0_thumb4.png" width="207"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Word:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.llanura.com/imagenes/Office2007yelListn_107C7/image010.png" atomicselection="true"&gt;&lt;img height="150" src="http://www.llanura.com/imagenes/Office2007yelListn_107C7/image0_thumb6.png" width="222"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Ahora bien, asi como ahorita ya tenemos una buena cantidad de sitios que utilizan el estilo Aero Glass propuesto por Microsoft para vista, ya empiezan a surgir los menus tipo Ribbon.&lt;/p&gt; &lt;p&gt;El mejor ejemplo de esto es &lt;a href="http://office.microsoft.com/"&gt;office.microsoft.com&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8257368150402116662?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8257368150402116662/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8257368150402116662' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8257368150402116662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8257368150402116662'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/office-2007-y-el-listn.html' title='Office 2007 y el Listón'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5184581259654812895</id><published>2006-12-13T18:28:00.001-06:00</published><updated>2006-12-13T18:28:51.183-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Exchange Server y el teléfono</title><content type='html'>&lt;p&gt;Siguiendo con la reseña del evento al que tuve oportunidad de asistir en dias pasados, me pareció muy interesante las nuevas funciones de exchange server que permiten que desde un teléfono&amp;nbsp; se tenga acceso al buzón de correo electrónico y que ademas con herramientas de reconocimiento de voz el correo se pueda escuchar.&lt;/p&gt; &lt;p&gt;Creo que fue lo unico que me impresiono y por supuesto enseguida vi las posibilidades de tener este tipo de herramientas, porque si existe algun sistema operativo que esta creciendo de manera exponencial es la del telefono, y me parece que ya no se quedará solo en hablar por telefono, si no que las herramientas de reconocimiento estaran a la orden del dia.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5184581259654812895?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5184581259654812895/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5184581259654812895' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5184581259654812895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5184581259654812895'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/exchange-server-y-el-telfono.html' title='Exchange Server y el teléfono'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1226345202931599923</id><published>2006-12-13T18:24:00.001-06:00</published><updated>2006-12-13T18:24:04.630-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Reseña de Windows Day y el futbol</title><content type='html'>&lt;p&gt;Este es un post atrasado. Tuve oportunidad de asisitir al Windows Day en el cual presentaron Exchange Server, Windows Vista y Office 2007. Es un gran lanzamiento de Microsoft y por supuesto el evento estuvo interesante.&lt;/p&gt; &lt;p&gt;Muchos que estan en la parte de tecnología seguramente han visto por lo menos alguna pantalla de Windows Vista o tenido oportunidad de usar alguna versión beta. No creo que haya más que decir,&amp;nbsp;el entorno se ve bastante robusto.&lt;/p&gt; &lt;p&gt;No es de extrañarse, con maquinas HP con el último procesador de Intel y con 1gb de memoria. Pareciera que estas características son los requisitos mínimos para este sistema operativo.&lt;/p&gt; &lt;p&gt;Pero olvidándonos de Vista, Office y demás... lo más interesante fué una plática de Jésus Ramírez entrenador del equipo campeón del mundo de futbol sub17.&lt;/p&gt; &lt;p&gt;Lo que mas me llamo la atención de esta plática motivacional al muy estilo de Cornejo, es el hecho de que pareciera que los programadores y la sociedad en general necesitamos primero creer que vamos a ser campeones y/o lideres y después desarrollar el proyecto para lograrlo, pero si nunca tenemos esa creencia, esa iniciativa de ser los mejores, pues dificilmente los planes, presupuestos y demas lograran que se cumplan los objetivos.&lt;/p&gt; &lt;p&gt;Chucho Ramírez, explica mediante fotos y videos como unos chavos de 12 años se fueron desarrollando hasta tener 16 años convertidos en maquinas de futbol. En solo 4 años logró que un equipo fuera campeón del mundo. Ojalá el Presidente Calderón platicara con él.&lt;/p&gt; &lt;p&gt;Y sobretodo lo que logro fue una mentalidad ganadora. Explica a manera de anecdota que cuando un reportero le hablo por teléfono desde México para preguntarle sobre el resultado de un partido, el contesto ganamos 2-0... y el reportero reia y le preguntaba "En serio, cuanto quedaron?".&lt;/p&gt; &lt;p&gt;Dificil luchar contra una sociedad que no cree en el éxito. Gracias Bill por la platica de Chucho Ramirez. Por lo menos me inspiro un par de semanas y estuve programando con inspiración.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1226345202931599923?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1226345202931599923/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1226345202931599923' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1226345202931599923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1226345202931599923'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/resea-de-windows-day-y-el-futbol.html' title='Reseña de Windows Day y el futbol'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3903943153421097000</id><published>2006-12-13T18:02:00.001-06:00</published><updated>2006-12-13T18:02:52.361-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Live Writer</title><content type='html'>&lt;p&gt;Hace tiempo habia intentado usar el programa &lt;a title="Windows Live Write" href="http://windowslivewriter.spaces.live.com"&gt;Live Writer&lt;/a&gt; para este blog sin éxito. Resulta que ya existe una actualizacion para poder usar esta herramienta para Blogger.&lt;/p&gt; &lt;p&gt;De hecho este es el primer post con esta herramienta, sólo espero que funcione bien. Lo que más me interesa es poder llevar 2 blogs al mismo tiempo desde una misma herramienta. Ya habia logrado llevar 2 blogs de blogger con Word. Pero ahora la idea es llevar un blog de spaces.live.com y otro de blogger.&lt;/p&gt; &lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3903943153421097000?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3903943153421097000/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3903943153421097000' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3903943153421097000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3903943153421097000'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/live-writer.html' title='Live Writer'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-5136947782541994294</id><published>2006-12-04T14:21:00.000-06:00</published><updated>2007-07-16T18:39:19.358-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Veracruz'/><category scheme='http://www.blogger.com/atom/ns#' term='Enlace Veracruzano'/><title type='text'>Enlace Veracruzano - Veracruz 5ta entidad.</title><content type='html'>Muchas gracias a &lt;a href="http://www.enlaceveracruzano.com/"&gt;Enlace Veracruzano&lt;/a&gt; por su invitación a participar como un colaborador en su revista de este mes de diciembre con el artículo "VERACRUZ: QUINTA ENTIDAD CON USUARIOS CONECTADOS", el cual estoy reproduciendo en las siguientes lineas:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;VERACRUZ: QUINTA ENTIDAD CON USUARIOS CONECTADOS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Según la Asociación Mexicana de Internet (AMIPCI) existen ya 20.2 millones de usuarios de Internet. De ellos el 58% son hombres y un 42% son mujeres. Comparado con los 17.1 millones que habían en el 2005, el numero de usuarios creció en poco más de un 18% en un año.&lt;br /&gt;&lt;br /&gt;La distribución de los usuarios por zonas geográficas, sigue manteniéndose de la misma manera, poniendo al estado de Veracruz en quinto lugar, detrás del Distrito Federal, Estado de México, Nuevo León y Jalisco. Se estima que en el estado de Veracruz hay aproximadamente 1.3 millones de usuarios, considerando el numero de usuarios totales por el porcentaje de distribución territorial.&lt;br /&gt;&lt;br /&gt;La AMIPCI también menciona en su estudio que el 90% provienen de una población urbana; el 43% se conecta desde su casa y otro 39% se conecta desde un café Internet.&lt;br /&gt;&lt;br /&gt;Otros datos interesantes del estudio es que los usuarios se conectan a Internet para&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Consultar y enviar correo electrónico: 80%&lt;/li&gt;&lt;li&gt;Usar algún servicio de mensajería instantánea: 68%&lt;/li&gt;&lt;li&gt;Entrar a un chatroom: 65%&lt;/li&gt;&lt;li&gt;Descargar música: 48%&lt;/li&gt;&lt;li&gt;Buscar noticias: 47%&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Aunque sólo el 41% han utilizado el comercio electrónico, el 75% considera de mucha utilidad el consultar Internet para decidir una compra física.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-5136947782541994294?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/5136947782541994294/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=5136947782541994294' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5136947782541994294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/5136947782541994294'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/12/enlace-veracruzano-veracruz-5ta-entidad.html' title='Enlace Veracruzano - Veracruz 5ta entidad.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2730034065058681371</id><published>2006-11-23T23:38:00.000-06:00</published><updated>2006-11-23T23:40:28.967-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>No compre computadora esta navidad.</title><content type='html'>Si Usted estaba pensando en aprovechar esta navidad para comprar una computadora para su casa, piénselo dos veces, ya que los expertos recomiendan no comprar computadora en esta temporada.&lt;br /&gt;Lo anterior se debe a que Microsoft decidió liberar la nueva versión de Windows hasta enero 30 del próximo año. Es así, que las PCs que se venderán en esta temporada navideña vendrán instaladas con Windows XP un sistema operativo, con varios años de antigüedad.&lt;br /&gt;Los expertos recomiendan, que a menos que el fabricante de la computadora garantice una actualización gratuita a Windows Vista (nombre oficial de la nueva versión), lo recomendable es esperar un par de meses.&lt;br /&gt;Aún cuando le garanticen la actualización, el problema es precisamente ese, el cambio en las versiones del sistema operativo es tan importante que posiblemente no sea tan sencillo hacerlo usted mismo, por ejemplo, tendrá que revisar qué programas instalados en la computadora podrán funcionar con Windows Vista, comprobar que los componentes de la computadora son compatibles, etc.&lt;br /&gt;Por otra parte, una computadora con el sistema operativo preinstalado, tiene la ventaja de haber pasado por diferentes pruebas de calidad para su venta.&lt;br /&gt;Los fabricantes de PCs están concientes de esta situación, y esperan en enero repuntar la venta de equipo de cómputo. Buen momento para que compre la suya.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2730034065058681371?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2730034065058681371/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2730034065058681371' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2730034065058681371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2730034065058681371'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/no-compre-computadora-esta-navidad.html' title='No compre computadora esta navidad.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-1969206361238149715</id><published>2006-11-21T18:28:00.000-06:00</published><updated>2006-11-22T13:21:54.578-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><title type='text'>Truco: Usar el servicio gratuito de ABC.com fuera de USA</title><content type='html'>La cadena televisiva de ABC ha puesto en su sitio de internet los capitulos de varias series que presenta actualmente en su programacion de forma gratuita. Estos capitulos tienen comerciales y estan en ingles, pero la restriccion mas fuerte es que solo pueden ser descargador por usuarios que se conectan a traves de direcciones IP registradas en Estados Unidos.&lt;br /&gt;Es asi, que si quieres ver alguno de esto programas desde Veracruz, Mexico, el sitio te manda un mensaje en la pantalla diciendo "Only viewer within the United States can watch these full length episodes".&lt;br /&gt;&lt;br /&gt;Esto me suena a un muro virtual, pero dejemonos de cosas y al grano, si quieres ver los nuevos capitulos de Lost, Desperate Housewives, Grey's Anatomy, y porque no... Uggly Betty; sólo necesitas tener configurado el navegador (IE o Firefox) con un proxy abierto.&lt;br /&gt;Para esto lo primero es conseguir la IP del proxy, un buen sitio para buscar es:&lt;br /&gt;&lt;a href="http://www.publicproxyservers.com/page1.html"&gt;http://www.publicproxyservers.com/page1.html &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Obviamente tenemos que ver que el pais sea Estados Unidos... copiamos la direccion IP y el puerto. Tenemos que ir al menu de IE, seleccionamos Herramientas/Opciones de Internet&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/2713/1538/1600/abc01.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger2/2713/1538/400/abc01.jpg" alt="" border="0" /&gt;&lt;/a&gt;Seleccionamos la pestaña "Conexiones", y a continuacion apretamos el boton de "Configuración de LAN", y aparecera una segunda ventana de dialogo en la cual estara el campo para el proxy y el puerto, escribimos los datos que teniamos y damos aceptar.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/2713/1538/1600/abc02.jpg"&gt;&lt;img style="cursor: pointer;" src="http://photos1.blogger.com/blogger2/2713/1538/400/abc02.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Y ahora conectarse a &lt;a href="http://dynamic.abc.go.com/streaming/landing"&gt;http://dynamic.abc.go.com/streaming/landing&lt;/a&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-1969206361238149715?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/1969206361238149715/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=1969206361238149715' title='3 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1969206361238149715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/1969206361238149715'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/truco-usar-el-servicio-gratuito-de.html' title='Truco: Usar el servicio gratuito de ABC.com fuera de USA'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6331199963585074111</id><published>2006-11-21T17:43:00.000-06:00</published><updated>2007-04-04T19:34:52.863-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GoDaddy'/><category scheme='http://www.blogger.com/atom/ns#' term='OSCommerce'/><title type='text'>Instalación de OSCommerce en un VDS de Goddady</title><content type='html'>La siguiente es una serie de pasos para no tener los problemas que me encontre al realizar una&lt;br /&gt;instalación de OSCommerce en Godaddy en un servidor virtual dedicado.&lt;br /&gt;&lt;br /&gt;Requerimientos previos:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Nombre de la base de datos, el nombre de usuario y la contraseña.&lt;/li&gt;&lt;li&gt;Nombre de usuario web y contraseña.&lt;/li&gt;&lt;li&gt;Nombre de usuario administrador y contraseña&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Bueno, lo primero es obtener el archivo oscommerce-2.2ms2-060817.tgz de &lt;a href="http://www.oscommerce.com/solutions/downloads"&gt;http://www.oscommerce.com/solutions/downloads&lt;/a&gt;.&lt;br /&gt;En lugar de descomprimir el archivo y subir cada archivo mediante ftp, decidi subir el archivo por ftp al servidor dedicado, usando el cliente FileZilla.&lt;/li&gt;&lt;li&gt;Una vez que termine de subir el archivo, me conecte con PuTTy (&lt;a href="http://www.chiark.greenend.org.uk/%7Esgtatham/putty/download.html"&gt;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&lt;/a&gt;) al servidor usando  el nombre de usuario administrador y su correspondiente contraseña.&lt;/li&gt;&lt;li&gt;Una vez que inicie la sesion, me cambia a superusuario con la instruccion:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;su -root.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;El archivo comprimido debe estar en /home/miusuario/, para descomprimirlo usamos:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;tar -xvf oscommerce-2.2ms2-060817.tgz.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: courier new;"&gt;&lt;/span&gt;Movemos todo lo que haya en la carpeta catalog al root del servidor web&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;mv oscommerce-2.2ms2-060817/catalog /home/usuarioweb/public_html&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Intente instalar OSCommerce pero obtuve el error:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Server Requirement Error: register_globals is disabled in your PHP configuration. This can be enabled in your php.ini configuration file or in the .htaccess file in your catalog directory.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La solucion es modificar el php.ini, se indica que es un problema de seguridad la modificacion, pero intente varias otras cosas para que funcionara y al momento deje de batallar y simplemente cambie el php.ini.&lt;br /&gt;&lt;br /&gt;Antes de hacer esto instale GNU Nano (http://www.nano-editor.org/) en el servidor, honestamente es mucho mas facil que VI.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;En una sesion de PuTTY:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;lynx http://www.nano-editor.org&lt;/span&gt;&lt;br /&gt;Y obtener la version RPM nano-2.0.1-1.i386.rpm&lt;/li&gt;&lt;li&gt;Salir de lynx, instalar nano con la siguiente instruccion desde la carpeta home (/home/miusuario)&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;rpm -iv nano-2.0.1-1.i386.rpm&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: courier new;"&gt;&lt;/span&gt;Ahora sera mas facil editar el archivo php.ini&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;nano /etc/php.ini&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: courier new;"&gt;&lt;/span&gt;Buscar (Ctrl-w) la palabra "register_globals" y editar la instruccion para que quede:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;;respaldo: register_globals = Off&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;register_globals = On&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: courier new;"&gt;&lt;/span&gt;Y hacer lo mismo con "register_long_arrays":&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;;respaldo: register_long_arrays = Of&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;register_long_arrays = On&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: courier new;"&gt;&lt;/span&gt;Guardar el archivo (ctrl-o)&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Regresamos a nuestro browser y ponemos la direccion del dominio www.midominio.com&lt;br /&gt;Y aparece la pantalla de instalacion de OSCommerce.&lt;br /&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6331199963585074111?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6331199963585074111/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6331199963585074111' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6331199963585074111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6331199963585074111'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/instalacin-de-oscommerce-en-un-vds-de.html' title='Instalación de OSCommerce en un VDS de Goddady'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-3820760826229554723</id><published>2006-11-17T13:07:00.000-06:00</published><updated>2006-11-17T13:11:11.556-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>El robo por Internet cada vez es mas común.</title><content type='html'>Como menciona nuestro amigo &lt;a href="http://robertomontano.blogspot.com/"&gt;Roberto Montaño&lt;/a&gt;  en su articulo de la semana, la verdad es que la gente no tiene la precaucion debida y las empresas dejan a los usuarios en un verdadero limbo en asuntos de la seguridad de la informacion, te invitamos a leer mas al detalle:&lt;br /&gt;&lt;a href="http://robertomontano.blogspot.com/2006/11/el-robo-por-internet-cada-vez-es-mas.html"&gt;http://robertomontano.blogspot.com/2006/11/el-robo-por-internet-cada-vez-es-mas.html &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Gracias!.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-3820760826229554723?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/3820760826229554723/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=3820760826229554723' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3820760826229554723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/3820760826229554723'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/el-robo-por-internet-cada-vez-es-mas.html' title='El robo por Internet cada vez es mas común.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2698600403880121512</id><published>2006-11-13T19:19:00.000-06:00</published><updated>2006-11-13T19:43:37.174-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='General'/><title type='text'>Concurso de Podcasting</title><content type='html'>Hace unas semanas estaba el consurso de podcasting del sitio &lt;a href="http://www.rockandroll.com.mx"&gt;www.rockandroll.com.mx&lt;/a&gt; en el cual el primer premio era un &lt;a href="http://www.rockandroll.com.mx/fordka"&gt;Ford KA 2007&lt;/a&gt;, para cuando lo vi andaba apurado con otras cosas y ni tiempo para ponerme a ver con que participar, ademas creo que eso de la locución no se me da.&lt;br /&gt;Ahora hay un nuevo concurso ahora de la universidad iberoamericana en el sitio es &lt;a href="http://ibero909radio.com"&gt;ibero909radio.com,&lt;/a&gt; según la AMIPCI en Mexico casi el 50% de los usuarios descarga música de internet, asi que no me extraña que se empiecen a dar este tipo de concursos.&lt;br /&gt;Lo interesante es que en ambos casos el tema es libre, es decir hable de lo que quieran con su ronco pecho. Creo que esta tan verde el asunto del podcasting, que ni siquiera saben los organizadores cuales son los temas que se pueden realmente tratar, y sobre todo comercializar.&lt;br /&gt;&lt;br /&gt;No pretendo dar seguimiento a este movimiento de podcasting, pero por ahí ya hay algunos esfuerzos interesantes para que esta tecnología crezca en México, como son los que mencione y ademas: &lt;a href="http://www.frecuenciacero.com.mx"&gt;frecuenciacero.com.mx&lt;/a&gt;, &lt;a href="http://www.invasion.org.mx"&gt;Invasión Podcasting&lt;/a&gt;, y &lt;a href="http://prodigymsn.dixo.com/"&gt;Prodigy Dixo&lt;/a&gt;. Este último participará en la &lt;a href="http://sacomunicacion.blogspot.com/"&gt;semana de la comunicación&lt;/a&gt; que precisamente la universidad iberoamericana esta por realizar en esta semana.&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2698600403880121512?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2698600403880121512/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2698600403880121512' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2698600403880121512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2698600403880121512'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/concurso-de-podcasting.html' title='Concurso de Podcasting'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2705547047562101685</id><published>2006-11-08T18:40:00.000-06:00</published><updated>2006-11-08T21:38:45.570-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>Flash es malo</title><content type='html'>Mi respuesta a la pregunta si se debe usar o no usar flash en sitios web empresariales es NO. Independiente de las razones que se mencionan en &lt;a href="http://www.informatica32.com/archivos/20050415/usar-o-no-usar-flash-en-sitios-web-empresariales/"&gt;Informatica32&lt;/a&gt;, y que el guru de la usabilidad Jakob Nielsen menciona que &lt;a href="http://www.useit.com/alertbox/20001029.html"&gt;Flash es 99% malo&lt;/a&gt;, mis razones para no usar Flash son las siguientes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;En términos generales, no aportan nada.&lt;/li&gt;&lt;li&gt;Son difíciles de realizar.&lt;/li&gt;&lt;li&gt;No se puede imprimir el contenido de manera sencilla.&lt;/li&gt;&lt;li&gt;No se puede copiar el contenido.&lt;/li&gt;&lt;li&gt;Generalmente están mal.&lt;/li&gt;&lt;li&gt;AJAX es mejor tecnología y es estándar.&lt;/li&gt;&lt;li&gt;Consume recursos sin sentido.&lt;/li&gt;&lt;/ol&gt;Caray, ni siquiera &lt;a href="http://www.pixar.com"&gt;Pixar&lt;/a&gt;, lider en animación, utiliza flash. Lo clásico es un menu que se muestre dinámicamente, que cambie de color cuando el ratón se encuentra encima de algún enlace u opción del menu. Pero esto no tiene sentido y aqui las razones:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Consumo de memoria adicional de IE al cargarse flash para ejecutar el menu: 1024kb.&lt;/li&gt;&lt;li&gt;Consumo de memoria adicional de IE al cargarse CSS: 0 kb.&lt;/li&gt;&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;Consumo de ancho de banda por transmitir el archivo menu.swf: 50kb (1.2 segundos).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Consumo de ancho de banda por transmitir el archivo CSS: 2k (0.1 segundos).&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;Tiempo en instalar el plugin de flash: 25 minutos (se tuvo que reiniciar la PC).&lt;/li&gt;&lt;li&gt;Tiempo en instalar CSS: No fue necesario.&lt;/li&gt;&lt;/ol&gt;Ahora bien, poner animaciones, para comenzar una animación por sencilla que pretenda ocupara un tamaño minimo de 450kb, esto considerando que sea lo mas sencillo. Con 450 kb, se puede construir un sitio completo, lo cual representa mayor rapidez para la presentación del contenido.&lt;br /&gt;Una animación, es práctica cuando se va a explicar algun proceso, por ejemplo, una animación de cómo funciona el corazón, es muy educativo. Pero una animación del logo de la empresa, ¿Que puede transmitir?, se ve bonito, puede ser, pero ¿a que costo?. Cualquier diseñador y personal de marketing podrá exponer que la imagen vende, pero en Internet donde se pueden comparar precios de manera sencilla y la competencia esta a un click de distancia, creo que es preferible tener un sitio rápido y eficiente.&lt;br /&gt;Por otra parte realizar un sitio en Flash es costoso, porque se requiere por sobre todo mucha creatividad y tiempo para realizar las animaciones.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Cotización promedio con animaciones en flash $1,500 - $2,500 usd.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Cotización promedio sin animaciones usando Html, Ajax y CSS $100 - $450 usd.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Siempre es recomendable usar el dinero que se esta gastando en Flash, para otro fin como  anunciar el sito a traves de &lt;a href="http://www.google.com/adsense"&gt;Google AdSense&lt;/a&gt; o publicidad en algún otro medio escrito o radiofónico.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¡DI NO A FLASH!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2705547047562101685?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2705547047562101685/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2705547047562101685' title='4 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2705547047562101685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2705547047562101685'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/flash-es-malo.html' title='Flash es malo'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-222890905388293714</id><published>2006-11-06T17:41:00.000-06:00</published><updated>2006-11-06T17:52:50.565-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>IE 7.0 versión final en español</title><content type='html'>Así es, por fin ya está lista la versión en español de IE 7.0, despues de un par de horas entre obtener la versión e instalarla, estoy escribiendo este registro en IE7.&lt;br /&gt;Microsoft ha prometido que tratará de ir actualizando con mas regularidad este producto, en lo particular espero que no. IE7 es casi el estandar para las aplicaciones web, y una vez que funcionan en este navegador, casi que dejo de programar y revisar los otros del mercado.&lt;br /&gt;Mal hecho, pero cierto. Por otra parte me he vuelto adicto a tener muchas pestañas abiertas en Firefox y por fin la funcionalidad la tengo en IE7. No recuerdo en que página mostraban un benchmark de la rapidez de IE6, IE7, Firefox 1.5, Firefox 2.0, Safari, etc.&lt;br /&gt;En esa gráfica siempre ganaba IE7, así que estoy muy pendiente de la velocidad. Estoy haciendo mis propias pruebas.&lt;br /&gt;No voy a entrar en detalle con las funcionalidades, honestamente Microsoft ha dedicado todo un sitio a esto &lt;a href="http://www.microsoft.com/ie"&gt;(http://www.microsoft.com/ie&lt;/a&gt;), sólo indicaré las que me parecen las más importantes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Navegacion con pestañas.&lt;/li&gt;&lt;li&gt;Menú mas simplificado.&lt;/li&gt;&lt;li&gt;Soporte a PNG con transparencia.&lt;/li&gt;&lt;li&gt;Impresión de páginas con opcion de reduccion.&lt;/li&gt;&lt;li&gt;Tamaños de vista en barra de estado.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Listo!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-222890905388293714?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/222890905388293714/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=222890905388293714' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/222890905388293714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/222890905388293714'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/ie-70-versin-final-en-espaol.html' title='IE 7.0 versión final en español'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6150629943827431456</id><published>2006-11-06T12:07:00.001-06:00</published><updated>2006-11-06T12:07:56.422-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><title type='text'>TIP: Atlas cambia de nombre a Ajax a nivel código.</title><content type='html'>Instalé la nueva versión de Atlas, que ahora no se llama así, ahora el nombre oficial es AJAX, supongo que siguiendo el impulso que trae AJAX y para no crear confusion con los programadores, puesto que ya estaba siendo usado por librerias.&lt;br /&gt;Creí que no habría ningun problema con la instalación, puesto que ya he estado actualizandome con esta librería, pero sorpresa ahora no solo agregaron algunas funciones mas, ahora cambiaron de nombre el como manejar los componentes dentro del código.&lt;br /&gt;Ya que anteriormente se usaba &lt;span style="font-weight: bold;"&gt;&amp;lt;atlas: y ahora debemos colocar &amp;lt;asp:.&lt;br /&gt;&lt;/span&gt;Claro, no lei todas las notas de los cambios y estuve batallando un par de horas, con mi código por este asunto, total que tuve que modificar en algunas secciones lo anterior.&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6150629943827431456?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6150629943827431456/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6150629943827431456' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6150629943827431456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6150629943827431456'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/tip-atlas-cambia-de-nombre-ajax-nivel.html' title='TIP: Atlas cambia de nombre a Ajax a nivel código.'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-6384907471294244004</id><published>2006-11-01T18:48:00.000-06:00</published><updated>2007-04-04T19:35:38.734-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Triara'/><category scheme='http://www.blogger.com/atom/ns#' term='Open Source'/><category scheme='http://www.blogger.com/atom/ns#' term='Diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><title type='text'>Instalacion de SugarCRM en Prodigy Hosting</title><content type='html'>Hace un par de semanas intenté instalar la última versión de SugarCRM en un sitio que se hospeda en Prodigy Hosting (Triara). Antes de continuar con esto, debo comentar que me parece muy triste los pocos servicios y las pocas facilidades que tienen dentro de los planes basicos de Triara, en cualquier empresa de hospedaje gringo se cuenta con la facilidad de instalar una cantidad de aplicaciones de código abierto; en fín.&lt;br /&gt;El cliente cuenta con el servicio de hospedaje compartido en windows server, el cual cuenta con servicio de MySQL. Es así que, lo primero que debemos conocer es los datos del servicio de MySQL, en ocasion anterior mencione como hacer esto en este blog:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://llanura.blogspot.com/2006/09/triara-prodigyhosting-mysql.html"&gt;http://llanura.blogspot.com/2006/09/triara-prodigyhosting-mysql.html&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Una vez que tenemos esto, lo siguiente es obtener la versión que si va a poder ejecutar, porque desgraciadamente la version 4.5 no se puede instalar ya que Prodigy Hosting no cuenta con la última version de PHP en sus servidores, y por otra parte no pueden modificar el Php.ini, para el uso de MBSTRING.&lt;br /&gt;Si algun día deciden actualizar sus servidores pondre aqui mismo la noticia. Debido a lo anterior y para poder continuar con la instalación, se debe descargar la &lt;a href="http://www.sugarforge.org/content/downloads/"&gt;&lt;span style="font-weight: bold;"&gt;Version 3.0.1b&lt;/span&gt;.&lt;/a&gt;&lt;br /&gt;El archivo no pesa mucho pero descomprimir todos los archivos si me llevo un tiempo considerable, recomiendo para esta tarea el programa &lt;a href="http://www.7zip.org/"&gt;7zip&lt;/a&gt;, el cual es mas rápido que el compresor de windows y que winzip, y con licencia GNU.&lt;br /&gt;La siguiente tarea es subir todos los archivos a una carpeta del servidor mediante ftp (&lt;a href="http://filezilla.sourceforge.net/"&gt;Filezilla&lt;/a&gt;) , en particular agregue una carpeta llamada "sugarcrm", cero complicaciones.&lt;br /&gt;Otro archivo importante es la &lt;span style="font-weight: bold;"&gt;traducción del sugarcrm al español&lt;/span&gt;, este archivo es recomendable subirlo antes de ejecutar el script de instalación.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.sugarforge.org/frs/shownotes.php?release_id=127"&gt;Traduccion al español de la version 3.0 : http://www.sugarforge.org/frs/shownotes.php?release_id=127&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Tuve un poco de problemas para descargarlo directamente de SugarForge, pero un poquito de busqueda en google &lt;a href="http://www.google.com/search?hl=en&amp;amp;q=SugarSuite+es+20050918+zip"&gt;SugarSuite-3.0x-lang-es_es-20050918.zip &lt;/a&gt; y listo.&lt;br /&gt;Ahora bien, repito es importante instalar la traducción antes de ejecutar el script de instalacion, ya que se modifica el archivo config.php y los permisos de este archivo quedan como solo de lectura, y para modificar este archivo en ocasiones siguientes a traves del ftp o con alguien de soporte de Prodigy Hosting, se vuelve una lata.&lt;br /&gt;Lo ultimo por hacer es ejecutar el install.php, tal como en las instrucciones de SugarCRM.&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-6384907471294244004?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/6384907471294244004/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=6384907471294244004' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6384907471294244004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/6384907471294244004'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/11/instalacion-de-sugarcrm-en-prodigy.html' title='Instalacion de SugarCRM en Prodigy Hosting'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-8056085300556376064</id><published>2006-10-31T18:57:00.000-06:00</published><updated>2007-03-15T18:38:57.609-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Asp.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Visual Web Express Edition con MS Access Membership</title><content type='html'>Visual Web contiene un herramienta &lt;span id="ctl00_ctl00_content_content_welcome"&gt;de Administración de  sitios Web, la cual permite agregar usuarios, roles, contraseñas, etc. Esta herramienta es muy útil y permite desde el menu de &lt;a href="http://msdn.microsoft.com/vstudio/"&gt;Visual Web Developer&lt;/a&gt; administrar a los usuarios:&lt;/span&gt;&lt;br /&gt;&lt;span id="ctl00_ctl00_content_content_welcome"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/2713/1538/1600/membership01.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger2/2713/1538/400/membership01.jpg" alt="" border="0" /&gt;&lt;/a&gt;Se abre una pantalla en el Internet Explorer y se crea una instancia del servidor Cassini, ahora llamado ASP.Net Developer Server (en otra ocasión pondre como compilar este servidor). Toda la administración se realiza a traves del IE.&lt;br /&gt;El problema es que en la versión &lt;span style="font-weight: bold;"&gt;Express Edition&lt;/span&gt;, es decir la gratuita, no viene la opción de usar MS Access, se tiene que utilizar &lt;a href="http://msdn.microsoft.com/vstudio/express/sql/register/default.aspx"&gt;SQL Express Edition&lt;/a&gt;.&lt;br /&gt;Lo primero y más importante, es instalar &lt;a href="http://msdn.microsoft.com/vstudio/express/default.aspx"&gt;Visual C# Express Edition&lt;/a&gt;, lo segundo es bajar el &lt;a href="http://msdn.microsoft.com/vstudio/downloads/starterkits/default.aspx"&gt;Sample Access Provider&lt;/a&gt; starter kit de la página de msdn.&lt;br /&gt;El kit en realidad es un proyecto de C#, que se tiene que compilar. Se agrega como una plantilla de C#. Lo unico que se tiene que hacer es crear un nuevo proyecto. Recomiendo usar el mismo nombre de "ASP.NET Access Providers":&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/2713/1538/1600/membership02.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger2/2713/1538/400/membership02.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Una vez que se creo el nuevo proyecto lo unico que se tiene que hacer es compilar el proyecto, unicamente apretando el botón F6:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/2713/1538/1600/membership03.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger2/2713/1538/400/membership03.jpg" alt="" border="0" /&gt;&lt;/a&gt;Ahora bien, los archivos si es que no cambiaron las preferencias se guardaran dentro de la carpeta de \Mis documentos\Visual Studio 2005\Projects\ASP.NET Access Providers\ASP.NET Access Providers.&lt;br /&gt;Vamos a requerir 3 archivos el archivo dll que se creo, que se debe de encontrar en la carpeta bin\Release\ASP.NET Access Providers.dll; la base de datos tambien ubicada en esta carpeta ASPNetDB.mdb y el archivo web.config que se encuentra en la carpeta raiz del proyecto.&lt;br /&gt;Nos trasladamos a Visual Web Developer Express Edition, y creamos un nuevo sitio web, al cual tenemos que importar el archivo web.config al directorio raiz del proyecto; la base de datos en la carpeta de de App_Data (si no existe habra que crearla) y el archivo dll a nuestra carpeta Bin (igualmente, si no existe habra que crearla).&lt;br /&gt;Haciendo lo anterior podremos tener un sitio web con la administracion de usuarios mediante MS Access y usando la Herramienta de Administracion de Visual Web.&lt;br /&gt;Listo!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span id="ctl00_ctl00_content_content_welcome"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-8056085300556376064?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/8056085300556376064/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=8056085300556376064' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8056085300556376064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/8056085300556376064'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/10/visual-web-express-edition-con-ms.html' title='Visual Web Express Edition con MS Access Membership'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-2048035541944697300</id><published>2006-10-26T12:29:00.000-05:00</published><updated>2006-11-06T11:44:54.282-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Truco'/><title type='text'>Ranking de Blogalaxia en Blogger beta</title><content type='html'>Un primo me pregunto donde podia colocar su blog, yo le comente que &lt;a href="http://www.blogger.com/"&gt;www.blogger.com&lt;/a&gt; es muy bueno y que mucha gente lo usa. Actualmente comenzo su blog despues de insistir, el cual es &lt;a href="http://mitiopingus.blogspot.com/"&gt;http://mitiopingus.blogspot.com&lt;/a&gt;, pero esta usando la version beta de blogger, creo que ni se dio cuenta, y cuando le dije que agregara a &lt;a href="http://blogalaxia.com/"&gt;blogalaxia.com&lt;/a&gt;, para empezar a difundir su blog, resulto que el codigo de rankin no servia.&lt;br /&gt;Me puse a la tarea de investigar que estaba pasando, y resulta que las plantillas han sufrido un cambio radical para empezar esta usando un DTD especifico para el blogger.&lt;br /&gt;Consulte varios blogs de internet para realizar el hack, encontre en &lt;a href="http://hackosphere.blogspot.com/2006/09/delicious-and-digg-hotlinks-for-your.html"&gt;Hackosphere&lt;/a&gt; la forma de agregar el bookmarking social de Digg, y de Delicious, supuse que por ahi estaria el asunto.&lt;br /&gt;Aqui el código:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;a expr:href='"http://digg.com/submit?phase=3&amp;amp;amp;url=" +&lt;br /&gt;    data:post.url' target='_blank'&amp;gt;DiggIt!&amp;lt;/a&amp;gt;&lt;br /&gt; &amp;lt;a expr:href='"http://del.icio.us/post?url=" +&lt;br /&gt;    data:post.url + "&amp;amp;amp;title=" + data:post.title'&lt;br /&gt;      target='_blank'&amp;gt;Del.icio.us&amp;lt;/a&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pero el codigo de Blogalaxia utiliza un iframe, no un anchor (a).&lt;br /&gt;Segui con la busqueda y en &lt;a href="http://ecmanaut.blogspot.com/2006/09/blogger-beta-templates.html"&gt;ecmanaut&lt;/a&gt; se explica que para el caso de los url compuestos dentro de Blogger Beta, tipo permalink tenemos que agregar un atributo .expr, el cual permitirá colocarlos:&lt;br /&gt;Total que para no hacer mas largo el comentario, el codigo es:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;iframe expr:src='&amp;quot;http://rank.blogalaxia.com/pbrate.php?color=ffffff&amp;amp;amp;url=&amp;quot;&lt;br /&gt;+ data:post.url' frameborder='0' height='15' marginheight='0' marginwidth='0'&lt;br /&gt;scrolling='no' style='margin:0; padding:0' width='70'&amp;gt;&amp;lt;/iframe&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Listo!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-2048035541944697300?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/2048035541944697300/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=2048035541944697300' title='18 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2048035541944697300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/2048035541944697300'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/10/ranking-de-blogalaxia-en-blogger-beta.html' title='Ranking de Blogalaxia en Blogger beta'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12602009.post-7762942210716254001</id><published>2006-10-25T18:34:00.000-05:00</published><updated>2006-10-25T18:38:40.870-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Consejos'/><title type='text'>MP3s Propios y gratuitos</title><content type='html'>&lt;o:p&gt;&lt;/o:p&gt;De vez en cuando aquí en Llanura.com, nos ponemos muy creativos con la música que acompaña a los desarrollos que manejamos, no nos quedamos con la simple cortinilla de entrada de alguna presentación realizada en Flash.    &lt;ol&gt;&lt;li&gt;&lt;a href="http://mp3download.myspace.com/music.ashx?bandid=122543737&amp;songid=30938744&amp;amp;name=122543737_fd3759b0"&gt;Cardenia.mp3&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://mp3download.myspace.com/music.ashx?bandid=122543737&amp;songid=30985671&amp;amp;name=122543737_9285b2ba"&gt;Rapelaza.mp3&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://mp3download.myspace.com/music.ashx?bandid=122543737&amp;songid=30989669&amp;amp;name=122543737_3c7a5cb0"&gt;Samborque.mp3&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a href="http://mp3download.myspace.com/music.ashx?bandid=122543737&amp;songid=30990629&amp;amp;name=122543737_876c12e8"&gt;Sherpanai.mp3&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;      &lt;p class="MsoNormal"&gt; &lt;/p&gt;    &lt;p class="MsoNormal"&gt;Si quieren ver la pagina donde se encuentran los archivos, la direccion es &lt;a href="http://www.myspace.com/djvondum/"&gt;http://www.myspace.com/djvondum &lt;/a&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;La música es difícil de categorizarla, simplemente son samplers organizados lo mejor que podemos en ACID® XPress 5.0 &lt;a href="http://www.acidplanet.com/"&gt;http://www.acidplanet.com/&lt;/a&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Esta herramienta es gratuita y fácil de usar, solo es cuestión de un poco de práctica, pero podemos garantizar que si tienes ritmo en un par de horas podrás haber grabado un CD completo.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Listo!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12602009-7762942210716254001?l=llanura.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://llanura.blogspot.com/feeds/7762942210716254001/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=12602009&amp;postID=7762942210716254001' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7762942210716254001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12602009/posts/default/7762942210716254001'/><link rel='alternate' type='text/html' href='http://llanura.blogspot.com/2006/10/mp3s-propios-y-gratuitos.html' title='MP3s Propios y gratuitos'/><author><name>vgarcias</name><uri>http://www.blogger.com/profile/09409315532297958857</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='31' src='http://3.bp.blogspot.com/_0wpDOZY7yrU/SPi4niH6bUI/AAAAAAAAAbE/9d9p-q_M1gU/S220/avatar.jpg'/></author><thr:total>0</thr:total></entry></feed>
