<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>NeoEGM.com &#187; Open Source</title>
	<atom:link href="http://www.neoegm.com/tag/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.neoegm.com</link>
	<description>Knowledge is inside</description>
	<lastBuildDate>Mon, 08 Jul 2024 05:38:01 +0000</lastBuildDate>
	<language>es-ES</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.39</generator>
	<item>
		<title>Plugin para Keil uVision: Matrix Keyboard (Teclado Matricial)</title>
		<link>http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/</link>
		<comments>http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/#comments</comments>
		<pubDate>Mon, 03 May 2010 04:53:36 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Keil Plugins]]></category>
		<category><![CDATA[8051]]></category>
		<category><![CDATA[AGSI]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Keil]]></category>
		<category><![CDATA[Keyboard]]></category>
		<category><![CDATA[Matrix]]></category>
		<category><![CDATA[Matrix Keyboard]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[uVision]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1692</guid>
		<description><![CDATA[Actualización (2010-05-19): circuito actualizado para reflejar el esquema real. Como no pude encontrar un plugin de teclado matricial decente para el Keil uVision, decidí desarrollar uno. Internamente, responde al siguiente circuito: Está preparado para aceptar múltiples presiones de tecla a la vez, para poder simular una aplicación del mundo real: Utilización Antes que nada, tenés [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/" rel="bookmark" title="Cómo instalar un plugin de periférico para el Keil uVision">Cómo instalar un plugin de periférico para el Keil uVision </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer (Entrenador de Guitarra)">Guitar Trainer (Entrenador de Guitarra) </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><strong>Actualización (2010-05-19):</strong> circuito actualizado para reflejar el esquema real.</p>
<p>Como no pude encontrar un plugin de teclado matricial decente para el Keil uVision, decidí desarrollar uno.</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Keyboard.png" alt="" title="MatrixKeyboard_Keyboard" width="184" height="255" class="aligncenter size-full wp-image-1694" /></p>
<p><span id="more-1692"></span></p>
<p>Internamente, responde al siguiente circuito:</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Schematic.png" rel="lightbox[1692]"><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Schematic-180x300.png" alt="" title="MatrixKeyboard_Schematic" width="180" height="300" class="aligncenter size-medium wp-image-1693" /></a></p>
<p>Está preparado para aceptar múltiples presiones de tecla a la vez, para poder simular una aplicación del mundo real:</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Keyboard_Multiple.png" alt="" title="MatrixKeyboard_Keyboard_Multiple" width="184" height="256" class="aligncenter size-full wp-image-1695" /></p>
<h3>Utilización</h3>
<p>Antes que nada, tenés que instalarlo en el Keil uVision y configurar tu proyecto para que lo utilice al simular. El nombre del plugin, para la configuración, es <strong>MatrixKeyboard</strong>. Podés seguir <a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/">esta guía paso a paso</a>.</p>
<p>Luego, tenés que copiar el archivo <strong>MatrixKeyboard.ini</strong> a tu proyecto, y modificarlo para satisfacer tus requerimientos. Por ejemplo, dadas las siguientes definiciones de pines:</p>
<pre class="brush: cpp; title: ; notranslate">
sbit Keyboard_Scan_0 = P1^1;
sbit Keyboard_Scan_1 = P1^2;
sbit Keyboard_Scan_2 = P1^3;
sbit Keyboard_Scan_3 = P1^4;

sbit Keyboard_Return_0 = P1^5;
sbit Keyboard_Return_1 = P1^6;
sbit Keyboard_Return_2 = P1^7;
</pre>
<p>Podrías configurar el INI de este modo:</p>
<pre class="brush: plain; title: ; notranslate">
[Settings]

; All port addresses in hexadecimal
; Bits: 0-7

Scan0_Port_Address = 90
Scan0_Port_Bit = 1

Scan1_Port_Address = 90
Scan1_Port_Bit = 2

Scan2_Port_Address = 90
Scan2_Port_Bit = 3

Scan3_Port_Address = 90
Scan3_Port_Bit = 4

Return0_Port_Address = 90
Return0_Port_Bit = 5

Return1_Port_Address = 90
Return1_Port_Bit = 6

Return2_Port_Address = 90
Return2_Port_Bit = 7
</pre>
<p>Si no recordás las direcciones de los puertos, siempre podés consultar el archivo header correspondiente a tu microcontrolador, y buscar una línea como esta:</p>
<pre class="brush: cpp; title: ; notranslate">
sfr P1 = 0x90;
</pre>
<p>Bueno, eso es todo. Ahora podés ejecutar tu proyecto en modo simulación y abrir el plugin yendo a Peripherals->Matrix Keyboard.</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">MatrixKeyboard está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p>Finalmente, los links de descarga:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/keil-plugins/matrix-keyboard/MatrixKeyboard_1.1.zip">Plugin MatrixKeyboard v1.1</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/keil-plugins/matrix-keyboard/MatrixKeyboard_1.1_Source.zip">Descargar Código Fuente v1.1</a></p>
</div>
<p>El proyecto del código fuente está hecho para el <strong>Visual Studio 2008</strong>, pero se puede adaptar fácilmente a otras versiones.<br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="guitar fret notes">guitar fret notes</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="diapasón guitarra">diapasón guitarra</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="diapasón de la guitarra">diapasón de la guitarra</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="matrix keyboard">matrix keyboard</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="notes on the fretboard">notes on the fretboard</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="guitar notes on the fretboard">guitar notes on the fretboard</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="KEIL UVISION">KEIL UVISION</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="teclado matricial">teclado matricial</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="the notes on a guitar">the notes on a guitar</a></li>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="windows 95 games">windows 95 games</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/" rel="bookmark" title="Cómo instalar un plugin de periférico para el Keil uVision">Cómo instalar un plugin de periférico para el Keil uVision </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer (Entrenador de Guitarra)">Guitar Trainer (Entrenador de Guitarra) </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 14:04:06 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Fix]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Problem]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/</guid>
		<description><![CDATA[Desde que Facebook cambió su estructura, hace algunos días, el script para Mover el Recuadro de Eventos de Facebook hacia Arriba dejó de funcionar. Acabo de actualizar el script a la versión 1.3 para solucionar el inconveniente. Visitá el post original para descargar la versión actualizada. Ir al post original Incoming search terms for the [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p>Desde que Facebook cambió su estructura, hace algunos días, el script para <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Mover el Recuadro de Eventos de Facebook hacia Arriba</a> dejó de funcionar.</p>
<p>Acabo de actualizar el script a la versión 1.3 para solucionar el inconveniente.</p>
<p>Visitá el <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">post original</a> para descargar la versión actualizada.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="faceboopk">faceboopk</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="facebook script">facebook script</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="Javascript|NeoEGM com">Javascript|NeoEGM com</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="facebook events">facebook events</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="actualizar greasemonkey">actualizar greasemonkey</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="facebook scripts">facebook scripts</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="script facebook">script facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="events facebook">events facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="facebook scriptleri">facebook scriptleri</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" title="recuadro de cumple años">recuadro de cumple años</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extensión para Firefox: Close Repeated Tabs 1.0</title>
		<link>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 21:33:38 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Add-ons]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Close]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[eBay]]></category>
		<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Public]]></category>
		<category><![CDATA[Repetition]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tabs]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/</guid>
		<description><![CDATA[Acabo de actualizar la extensión de Firefox &#8220;Close Repeated Tabs&#8221; a la versión 1.0. Fue modificada para ser completamente compatible con Firefox 3.6 and 3.7. Además, ahora posee la funcionalidad de elegir si tratar a los diferentes anchors como la misma página o no. Hacer click aquí para descargar: Descargar O aquí para ir al [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos)">Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" rel="bookmark" title="Extensión para Firefox: List Open URLs (Listar URLs Abiertas)">Extensión para Firefox: List Open URLs (Listar URLs Abiertas) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-54 aligncenter" title="Close Repeated Tabs Menu" src="http://www.neoegm.com/wp-content/uploads/2009/04/closerepeatedtabs.png" alt="Close Repeated Tabs Menu" width="380" height="380" /></p>
<p>Acabo de actualizar <a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/">la extensión de Firefox &#8220;Close Repeated Tabs&#8221;</a> a la versión 1.0.</p>
<p>Fue modificada para ser completamente <strong>compatible con Firefox 3.6 and 3.7</strong>.</p>
<p>Además, ahora posee la funcionalidad de elegir si tratar a los diferentes anchors como la misma página o no.</p>
<p>Hacer click aquí para descargar:</p>
<div align="center">
<p class="download"><a href="https://addons.mozilla.org/en-US/firefox/addon/11884/">Descargar</a></p>
</div>
<p>O aquí para ir al post original para más información:</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/">Post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="firefox close">firefox close</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="Source: www10436.aboutcollegeessay.com/">Source: www10436.aboutcollegeessay.com/</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="addon firefox tab duplicados">addon firefox tab duplicados</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="Firefox_Addons_1-0">Firefox_Addons_1-0</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="firefox addon repeat movements">firefox addon repeat movements</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="plugin firefox repeat post">plugin firefox repeat post</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="firefox repeat addon">firefox repeat addon</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="repeat webpage plugin firefox">repeat webpage plugin firefox</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="goldd2s">goldd2s</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" title="https://yandex ru/clck/jsredir?from=yandex ru;search;web;;&amp;text=&amp;etext=1822 YMHvs22AeEOYtQ9KsOTU32sVTX8RySU11DTwf4rkvueBbEhVUgc4RbU1AourVfZM d0d75b4488fd5a7e0d68c4127db73f875c2e65f9&amp;uuid=&amp;state=_BLhILn4SxNIvvL0W45KSic66uCIg23qh8iRG98qeIXme">https://yandex ru/clck/jsredir?from=yandex ru;search;web;;&amp;text=&amp;etext=1822 YMHvs22AeEOYtQ9KsOTU32sVTX8RySU11DTwf4rkvueBbEhVUgc4RbU1AourVfZM d0d75b4488fd5a7e0d68c4127db73f875c2e65f9&amp;uuid=&amp;state=_BLhILn4SxNIvvL0W45KSic66uCIg23qh8iRG98qeIXme</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos)">Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" rel="bookmark" title="Extensión para Firefox: List Open URLs (Listar URLs Abiertas)">Extensión para Firefox: List Open URLs (Listar URLs Abiertas) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba &#8211; Versión de Diagnóstico</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 20:55:43 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[Diagnostics]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Fix]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Problem]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/</guid>
		<description><![CDATA[Acabo de publicar la versión de diagnóstico del script para Mover el Recuadro de Eventos de Facebook hacia Arriba script. Está pensada para ayudar en el trazado de cualquier tipo de problema que pueda evitar que el script le funcione a alguna persona. De más está decir que la versión de diagnóstico es sólo para [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p>Acabo de publicar la versión de diagnóstico del script para <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Mover el Recuadro de Eventos de Facebook hacia Arriba</a> script.</p>
<p>Está pensada para ayudar en el trazado de cualquier tipo de problema que pueda evitar que el script le funcione a alguna persona.</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop_Diagnostics.png" alt="FacebookEventsToTop_Diagnostics" title="FacebookEventsToTop_Diagnostics" width="383" height="198" class="aligncenter size-full wp-image-1582" /></p>
<p>De más está decir que <strong>la versión de diagnóstico es sólo para los que estén teniendo problemas con el script</strong>.</p>
<p>Visitá el <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/#diagnostics">post original</a> para leer las instrucciones y descargar la última versión.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/#diagnostics">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="ver eventos en facebook">ver eventos en facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover eventos facebook">mover eventos facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="como mover un recuadro en facebook">como mover un recuadro en facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover comentarios facebook">mover comentarios facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="plugin facebook desplazar arriba">plugin facebook desplazar arriba</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="TRASLADAR VIDEOS A FACEBOOK">TRASLADAR VIDEOS A FACEBOOK</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover de sitio los videos de facebook">mover de sitio los videos de facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover los eventos de facebbok">mover los eventos de facebbok</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover publicacion del facebook">mover publicacion del facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" title="mover publicaciones de facebook">mover publicaciones de facebook</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 20:55:03 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Fix]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Problem]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/</guid>
		<description><![CDATA[Casi no pasó nada de tiempo desde la última actualización (la hice ayer), pero tuve que hacer esta nueva versión para corregir un problema pendiente que hacía que el script no funcionara algunas veces con la nueva estructura del sitio (especificamente al volver a la página de Inicio sin refrescar luego de hacer algunas acciones [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p>Casi no pasó nada de tiempo desde la última actualización (la hice ayer), pero tuve que hacer esta nueva versión para corregir un problema pendiente que hacía que el script no funcionara algunas veces con la nueva estructura del sitio (especificamente al volver a la página de Inicio sin refrescar luego de hacer algunas acciones puntuales, por ejemplo, al hacer click en el link &#8220;Volver al Inicio&#8221; luego de limpiar las solicitudes pendientes).</p>
<p>Quizás no hayas visto el problema, pero, de todos modos, te recomiendo que lo actualices ya que Facebook sigue cambiando la estructura del sitio y esta es la versión que mejor funciona (ha estado haciendo su trabajo impecablemente en todos los casos en que la probé por el momento).</p>
<p>Visitá el <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">post original</a> para descargar la versión actualizada.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="facebook events box">facebook events box</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="facebook how to move post to top">facebook how to move post to top</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="how to move post to the top on facebook">how to move post to the top on facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="move facebook post top">move facebook post top</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="move posts to top in facebook">move posts to top in facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="move the box 1 2 1">move the box 1 2 1</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="move the box 1 2 1 download">move the box 1 2 1 download</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" title="mover post en facebook">mover post en facebook</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 20:55:48 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Fix]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Problem]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1396</guid>
		<description><![CDATA[Desde hace algunos días, el script para Mover el Recuadro de Eventos de Facebook hacia Arriba dejó de funcionar en algunas cuentas de Facebook (mientras siguió haciéndolo en otras). Parece ser que Facebook está actualizando algunas partes de su estructura de página y dichos cambios generaron los problemas. Acabo de actualizar el script a la [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p>Desde hace algunos días, el script para <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Mover el Recuadro de Eventos de Facebook hacia Arriba</a> dejó de funcionar en algunas cuentas de Facebook (mientras siguió haciéndolo en otras).</p>
<p>Parece ser que Facebook está actualizando algunas partes de su estructura de página y dichos cambios generaron los problemas.</p>
<p>Acabo de actualizar el script a la versión 1.2 para solucionar el inconveniente.</p>
<p>Visitá el <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">post original</a> para descargar la versión actualizada.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="add events box facebook">add events box facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="Facebook Move events box">Facebook Move events box</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="facebook move events">facebook move events</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="facebook events scripts">facebook events scripts</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="events box facebook?">events box facebook?</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="move events box">move events box</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="how to move facebookevents box to top">how to move facebookevents box to top</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="how to move comments to top on facebook">how to move comments to top on facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="how to move comments to the top on facebook">how to move comments to the top on facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" title="how to add events box on facebook">how to add events box on facebook</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Herramienta de Notificación de Visitas de Google Analytics</title>
		<link>http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/</link>
		<comments>http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 18:25:06 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Online Tools]]></category>
		<category><![CDATA[Access]]></category>
		<category><![CDATA[Accounts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Authorized]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[Google API]]></category>
		<category><![CDATA[Grant]]></category>
		<category><![CDATA[Icon]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Login]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Notification]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Pageviews]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Profiles]]></category>
		<category><![CDATA[Revoke]]></category>
		<category><![CDATA[Screenshot]]></category>
		<category><![CDATA[Secure]]></category>
		<category><![CDATA[Shortcut]]></category>
		<category><![CDATA[Simple]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Today]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Visits]]></category>
		<category><![CDATA[Webpage]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Window]]></category>
		<category><![CDATA[Yesterday]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1333</guid>
		<description><![CDATA[Si tenés un sitio web con Google Analytics configurado y querés poder ir viendo las visitas sin tener que ir al sitio de Analytics (excepto cuando necesites informes más avanzados), entonces esta herramienta es para vos&#8230; Es muy simple de usar&#8230; Solamente tenés que acceder a la siguiente dirección: http://www.neoegm.com/services/google-analytics-visits/ Y va a aparecer esta [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" rel="bookmark" title="Extensión para Firefox: List Open URLs (Listar URLs Abiertas)">Extensión para Firefox: List Open URLs (Listar URLs Abiertas) </a></li>
<li><a href="http://www.neoegm.com/es/tech/internet-tech/searching/which-search-engine-would-you-choose-if-you-just-saw-their-results-google-yahoo-or-bing/" rel="bookmark" title="Qué buscador elegirías si sólo vieras sus resultados de búsqueda? Google, Yahoo o Bing?">Qué buscador elegirías si sólo vieras sus resultados de búsqueda? Google, Yahoo o Bing? </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" rel="bookmark" title="Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más)">Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más) </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Si tenés un sitio web con <a href="http://www.google.com/analytics/">Google Analytics</a> configurado y querés poder ir viendo las visitas sin tener que ir al sitio de Analytics (excepto cuando necesites informes más avanzados), entonces esta herramienta es para vos&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Visits.png" alt="GoogleAnalyticsVisits_Visits" title="GoogleAnalyticsVisits_Visits" width="341" height="285" class="aligncenter size-full wp-image-1344" /></p>
<p><span id="more-1333"></span></p>
<p>Es muy simple de usar&#8230; Solamente tenés que acceder a la siguiente dirección:</p>
<div align="center" style="font-weight: bold; font-size:10pt;">
<a href="http://www.neoegm.com/services/google-analytics-visits/">http://www.neoegm.com/services/google-analytics-visits/</a>
</div>
<p>Y va a aparecer esta pantalla (<a href="#Convert_Into_Application">más abajo</a> voy a explicar cómo hacer que este servicio se vea como una aplicación y hasta cómo hacer para crear un acceso directo especial):</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Login.png" alt="GoogleAnalyticsVisits_Login" title="GoogleAnalyticsVisits_Login" width="373" height="301" class="aligncenter size-full wp-image-1342" /></p>
<p>Si presionás Login, vas a ser llevado al sitio de Google Apps, que te va a solicitar la información de login (a menos que ya estés logueado):</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Authenticate.png" rel="lightbox[1333]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Authenticate-300x200.png" alt="GoogleAnalyticsVisits_Authenticate" title="GoogleAnalyticsVisits_Authenticate" width="300" height="200" class="aligncenter size-medium wp-image-1338" /></a></p>
<p><br/><br />
<img src="http://www.neoegm.com/wp-content/uploads/2009/09/PadlockIcon.png" alt="PadlockIcon" title="PadlockIcon" width="100" height="100" class="alignleft size-full wp-image-1351" /><strong>Nota:</strong> como esta aplicación fue desarrollada usando la API de Google Analytics, tu información de inicio de sesion no pasa por el sitio <strong><em>NeoEGM.com</em></strong>, así que no hay forma de grabarla. El código fuente Javascript está disponible para comprobarlo.<br />
<br/><br />
Luego, va a aparecer la pantalla de otorgamiento de permiso&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Grant.png" rel="lightbox[1333]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Grant-300x201.png" alt="GoogleAnalyticsVisits_Grant" title="GoogleAnalyticsVisits_Grant" width="300" height="201" class="aligncenter size-medium wp-image-1347" /></a></p>
<p>Tenés que presionar el botón &#8220;Grant access&#8221; para que los datos estadísticos de Analytics puedan ser accedidos por la aplicación. Nuevamente: no hay absolutamente ningún tipo de daño en hacer esto ya que no se realiza registro alguno de los datos por parte del sitio <strong><em>NeoEGM.com</em></strong>.</p>
<p>Luego de que el botón &#8220;Grant access&#8221; ha sido presionado, vas a llegar a la pantalla de listado de cuentas&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Accounts.png" alt="GoogleAnalyticsVisits_Accounts" title="GoogleAnalyticsVisits_Accounts" width="373" height="301" class="aligncenter size-full wp-image-1337" /></p>
<p>Ahí, vas a tener que elegir la cuenta que querés monitorear. También podés copiar fácilmente el link de la cuenta para agregarlo a favoritos o poder accederlo directamente cada vez que quieras (sin tener que pasar a través de la pantalla de cuentas)&#8230; Esto es muy útil cuando tenés varios sitios que monitorear y querés abrir todos los links al mismo tiempo&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_IndexCopyLinks.png" alt="GoogleAnalyticsVisits_IndexCopyLinks" title="GoogleAnalyticsVisits_IndexCopyLinks" width="377" height="304" class="aligncenter size-full wp-image-1341" /></p>
<p>De todos modos, recomiendo abrir uno de ellos primero, para hacer todo el tema de la autenticación, y luego abrir los demás&#8230;</p>
<p>Bueno, finalmente, vamos a llegar a la pantalla de visitas, que muestra los visitas y pageviews de hoy y ayer&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_VisitsExplained.png" rel="lightbox[1333]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_VisitsExplained-300x135.png" alt="GoogleAnalyticsVisits_VisitsExplained" title="GoogleAnalyticsVisits_VisitsExplained" width="300" height="135" class="aligncenter size-medium wp-image-1345" /></a></p>
<p>Va a actualizarse automáticamente cada 5 minutos&#8230; Así que podés dejar la ventana abierta y mirarla cada tanto&#8230; Obviamente, tenés que tener en cuenta que el servicio de Google Analytics no refresca sus datos internos cada vez que un usuario visita tu sitio&#8230; Puede tomar varios minutos (normalmente 1 hora) para que veas cambios en tus visitas&#8230;</p>
<p>Bueno, eso es todo sobre la aplicación&#8230; Abajo hay más instrucciones para hacerla tener una interfase más amigable&#8230;</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Como de costumbre, Google Analytics Visits etá liberado bajo una licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a>&#8230;</span></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/PadlockIcon.png" alt="PadlockIcon" title="PadlockIcon" width="100" height="100" class="alignleft size-full wp-image-1351" /><strong>Consejo de Seguridad:</strong> si, por cualquier razón, alguna vez quisieras revocar el acceso que le otorgaste a <strong>cualquier</strong> aplicación web para acceder a tus datos de Google, podés visitar la utilidad de Google Accounts &#8220;<a href="https://www.google.com/accounts/IssuedAuthSubTokens">modificar sitios autorizados</a>&#8220;.<br />
<br/></p>
<p>Disfrutalo <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>

<a name="Convert_Into_Application"></a><h3>Cómo convertirlo en una aplicación (o al menos hacerlo verse como una :))</h3>
<p>Como probablemente habrás notado en las capturas de pantalla anteriores, en las ventanas que mostré no había ni barra de direcciones, ni botones de navegación, ni barra de estado ni cualquier otra cosa relacionada con un navegador. Cómo lo hice?</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/PrismLogoClean.png" alt="PrismLogoClean" title="PrismLogoClean" width="192" height="237" class="alignleft size-full wp-image-1336" />Hay una excelente extensión para <a href="http://www.firefox.com/">Firefox</a> llamada <strong>Prism</strong>, que te deja convertir <strong>cualquier</strong> sitio web en una aplicación de escritorio. Incluso crea los accesos directos por vos!</p>
<p>Cómo funciona?</p>
<p>Bueno, antes que nada, tenés que tener el navegador <a href="http://www.firefox.com/">Firefox</a> e instalar la extensión <a href="https://developer.mozilla.org/en/Prism">Prism</a>:</p>
<div align="right">
<p class="download"><a href="https://addons.mozilla.org/en-US/firefox/addon/6665">Extensión Prism para Firefox</a></p>
</div>
<p>Luego de eso, tenés que acceder a la dirección que querés convertir en una aplicación e ir a Herramientas->Convert Website to Application&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_ConvertWebsiteToApplication.png" alt="GoogleAnalyticsVisits_ConvertWebsiteToApplication" title="GoogleAnalyticsVisits_ConvertWebsiteToApplication" width="358" height="489" class="aligncenter size-full wp-image-1339" /></p>
<p>Después, vas a llegar alk diálogo de configuración de la aplicación Prism&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_Prism.png" alt="GoogleAnalyticsVisits_Prism" title="GoogleAnalyticsVisits_Prism" width="407" height="583" class="aligncenter size-full wp-image-1343" /></p>
<p>Allí, tenés que configurar cómo deseás que se comporte tu nueva aplicación (en este caso, no va a haber nada relacionado con un navegador y va a crearse un ícono de acceso directo en el escritorio)&#8230;</p>
<p>Y eso es todo! Vas a tener tu ícono de acceso directo a Google Analytics Visits en el escritorio&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/GoogleAnalyticsVisits_DesktopIcon.png" alt="GoogleAnalyticsVisits_DesktopIcon" title="GoogleAnalyticsVisits_DesktopIcon" width="136" height="117" class="aligncenter size-full wp-image-1363" /></p>
<p>Disfrutalo <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="padlock icon">padlock icon</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="notas mastil guitarra">notas mastil guitarra</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="mastil guitarra notaS">mastil guitarra notaS</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="google analytics notifications">google analytics notifications</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="notas en el mastil">notas en el mastil</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="notas del mastil de la guitarra">notas del mastil de la guitarra</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="google analytics notification">google analytics notification</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="posicion notas guitarra">posicion notas guitarra</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="diapason de la guitarra con las notas">diapason de la guitarra con las notas</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" title="notas en el mastil de guitarra">notas en el mastil de guitarra</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" rel="bookmark" title="Extensión para Firefox: List Open URLs (Listar URLs Abiertas)">Extensión para Firefox: List Open URLs (Listar URLs Abiertas) </a></li>
<li><a href="http://www.neoegm.com/es/tech/internet-tech/searching/which-search-engine-would-you-choose-if-you-just-saw-their-results-google-yahoo-or-bing/" rel="bookmark" title="Qué buscador elegirías si sólo vieras sus resultados de búsqueda? Google, Yahoo o Bing?">Qué buscador elegirías si sólo vieras sus resultados de búsqueda? Google, Yahoo o Bing? </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" rel="bookmark" title="Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más)">Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más) </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extensión para Firefox: List Open URLs (Listar URLs Abiertas)</title>
		<link>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/#comments</comments>
		<pubDate>Wed, 09 Sep 2009 20:55:36 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Add-ons]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Address]]></category>
		<category><![CDATA[All]]></category>
		<category><![CDATA[Back]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Clipboard]]></category>
		<category><![CDATA[Copy]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Dump]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Forward]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Hyperlink]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[List]]></category>
		<category><![CDATA[Listing]]></category>
		<category><![CDATA[Menu]]></category>
		<category><![CDATA[Message]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Option]]></category>
		<category><![CDATA[Select]]></category>
		<category><![CDATA[Show]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tab]]></category>
		<category><![CDATA[Tabs]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[URLs]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[Webpage]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Window]]></category>
		<category><![CDATA[YouTube]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1286</guid>
		<description><![CDATA[Supongamos que estás buscando videos (o páginas web si preferís) de algún tema en particular. Y navegás por montones y montones&#8230; Abriendo nuevos tabs y hasta saltando entre links sin dejar abierta la URL anterior en otro lado (esto pasa normalmente cuando hacés click en cualquier &#8220;Video Relacionado&#8221; en YouTube, ya que se abre automáticamente [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs 1.0">Extensión para Firefox: Close Repeated Tabs 1.0 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos)">Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos) </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" rel="bookmark" title="Herramienta de Notificación de Visitas de Google Analytics">Herramienta de Notificación de Visitas de Google Analytics </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Supongamos que estás <strong>buscando</strong> videos (o páginas web si preferís) de algún tema en particular. Y <strong>navegás por montones</strong> y montones&#8230; Abriendo nuevos tabs y hasta saltando entre links sin dejar abierta la URL anterior en otro lado (esto pasa normalmente cuando hacés click en cualquier &#8220;Video Relacionado&#8221; en YouTube, ya que se abre automáticamente en el mismo tab)&#8230;</p>
<p>Podría ser <strong>realmente tedioso</strong> ir por cada uno de los tabs <strong>rescatando todas las URLs interesantes</strong> para guardarlas&#8230;</p>
<p>También, si pudieras guardarlas como favoritos (asumiendo que no te importase el historial de navegación), no es muy simple <strong>obtener las URLs para copiarlas</strong> o para mandárselas a otra persona&#8230;</p>
<p>Para esto (y para cualquier otra utilidad que le puedas encontrar), desarrollé la extensión de Firefox &#8220;List Open URLs&#8221;&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_Menu.png" alt="ListOpenURLs_Menu" title="ListOpenURLs_Menu" width="354" height="252" class="aligncenter size-full wp-image-1293" /></p>
<p><span id="more-1286"></span></p>
<p>Como podrás imaginar, es muy simple de usar&#8230;</p>
<p>Tan solo hacés click en la opción &#8220;List Open URLs&#8221; del menú Herramientas y obtenés una pantalla preguntádote si querés o no tener en cuenta el historial de cada uno de los tabs&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_HistoryQuestion.png" alt="ListOpenURLs_HistoryQuestion" title="ListOpenURLs_HistoryQuestion" width="359" height="148" class="aligncenter size-full wp-image-1292" /></p>
<p>Si elegís que no (botón &#8220;Cancelar&#8221;), entonces va a generar un listado incluyendo sólo las URLs actualmente abiertas&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_DumpNoHistory.png" alt="ListOpenURLs_DumpNoHistory" title="ListOpenURLs_DumpNoHistory" width="350" height="191" class="aligncenter size-full wp-image-1291" /></p>
<p>Pero si, en cambio, hicieras click en &#8220;Aceptar&#8221;, entonces obtendrías un listado completo, incluyendo el historial de cada uno de los tabs (las direcciones en los botones &#8220;Volver&#8221; y &#8220;Avanzar&#8221;)&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_DumpHistory.png" rel="lightbox[1286]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_DumpHistory-300x132.png" alt="ListOpenURLs_DumpHistory" title="ListOpenURLs_DumpHistory" width="300" height="132" class="aligncenter size-medium wp-image-1290" /></a></p>
<p>Finalmente, si querés copiar el texto completo, podés simplemente hacer click derecho y elegir &#8220;Seleccionar Todo&#8221;&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_SelectAll.png" rel="lightbox[1286]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_SelectAll-300x132.png" alt="ListOpenURLs_SelectAll" title="ListOpenURLs_SelectAll" width="300" height="132" class="aligncenter size-medium wp-image-1288" /></a></p>
<p>Y, luego, volver a hacer click derecho y elegir &#8220;Copiar&#8221;&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_Copy.png" rel="lightbox[1286]"><img src="http://www.neoegm.com/wp-content/uploads/2009/09/ListOpenURLs_Copy-300x131.png" alt="ListOpenURLs_Copy" title="ListOpenURLs_Copy" width="300" height="131" class="aligncenter size-medium wp-image-1289" /></a></p>
<p>Eso es todo&#8230; Ya vas a tener el texto en el portapapeles&#8230;</p>
<p><br/><br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Como de costumbre, List Open URLs está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a>&#8230;</span></p>
<p>Si lo querés, simplemente hacé click acá para descargar:</p>
<div align="center">
<p class="download"><a href="https://addons.mozilla.org/en-US/firefox/addon/14223/">Descargar</a></p>
</div>
<p>Si te gusta, agregá una review en el <a href="https://addons.mozilla.org/en-US/firefox/addon/14223/">Sitio de Firefox de la Extensión</a> así puede salir del estado &#8220;experimental&#8221;&#8230;<br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="firefox open list of urls">firefox open list of urls</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="open list of urls in tabs addon">open list of urls in tabs addon</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="flash factory los angeles web design">flash factory los angeles web design</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="новости челябинск мир 74">новости челябинск мир 74</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="open list of urls">open list of urls</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="open list of urls in firefox">open list of urls in firefox</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="open urls from list">open urls from list</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="firefox open a list of URLs">firefox open a list of URLs</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="open list of urls firefox">open list of urls firefox</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/" title="list urls firefox">list urls firefox</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-1-0/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs 1.0">Extensión para Firefox: Close Repeated Tabs 1.0 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-close-repeated-tabs-extension/" rel="bookmark" title="Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos)">Extensión para Firefox: Close Repeated Tabs (Cerrar tabs repetidos) </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" rel="bookmark" title="Herramienta de Notificación de Visitas de Google Analytics">Herramienta de Notificación de Visitas de Google Analytics </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/add-ons/firefox-add-on-list-open-urls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hide WordPress Visual Editor Tab 1.01</title>
		<link>http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/</link>
		<comments>http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 20:01:25 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Break]]></category>
		<category><![CDATA[Client-side]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Delete]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Install]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Page]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[qTranslate]]></category>
		<category><![CDATA[Remove]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tab]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Users]]></category>
		<category><![CDATA[Visual]]></category>
		<category><![CDATA[Visual Editor]]></category>
		<category><![CDATA[WYSIWYG]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1275</guid>
		<description><![CDATA[Hide WordPress Visual Editor Tab fue actualizado a la versión 1.01 para hacer que también funcione al crear nuevos posts y páginas. En la versión anterior (1.0), sólo funcionaba al editar posts y páginas que ya hubieran sido creadas. Para descargar la última versión, visitá el post original de Hide WordPress Visual Editor Tab. Ir [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" rel="bookmark" title="Cómo eliminar la hoja &#8220;Visual&#8221; del editor de posts/páginas de WordPress">Cómo eliminar la hoja &#8220;Visual&#8221; del editor de posts/páginas de WordPress </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><strong><em>Hide WordPress Visual Editor Tab</em></strong> fue actualizado a la versión 1.01 para hacer que también funcione al crear nuevos posts y páginas. En la versión anterior (1.0), sólo funcionaba al editar posts y páginas que ya hubieran sido creadas.</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Remove_Visual_Tab_Removed.png" alt="Remove_Visual_Tab_Removed" title="Remove_Visual_Tab_Removed" width="499" height="208" class="aligncenter size-full wp-image-1178" /></p>
<p>Para descargar la última versión, visitá el <a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/">post original de Hide WordPress Visual Editor Tab</a>.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="wordpress hide visual editor">wordpress hide visual editor</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="quitar editor visual wordpress">quitar editor visual wordpress</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="wordpress remove visual editor tab">wordpress remove visual editor tab</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="hide wordpress editor">hide wordpress editor</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="video freeware">video freeware</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="hide visual editor">hide visual editor</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="wordpress hide visual editor tab">wordpress hide visual editor tab</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="visual hide">visual hide</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="doores1">doores1</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" title="que hide visual">que hide visual</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" rel="bookmark" title="Cómo eliminar la hoja &#8220;Visual&#8221; del editor de posts/páginas de WordPress">Cómo eliminar la hoja &#8220;Visual&#8221; del editor de posts/páginas de WordPress </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cómo eliminar la hoja &#8220;Visual&#8221; del editor de posts/páginas de WordPress</title>
		<link>http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/</link>
		<comments>http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 20:58:28 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Break]]></category>
		<category><![CDATA[Client-side]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Delete]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Install]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Page]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Post]]></category>
		<category><![CDATA[qTranslate]]></category>
		<category><![CDATA[Remove]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tab]]></category>
		<category><![CDATA[Users]]></category>
		<category><![CDATA[Visual]]></category>
		<category><![CDATA[Visual Editor]]></category>
		<category><![CDATA[WYSIWYG]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1173</guid>
		<description><![CDATA[Hay un montón de personas (como yo) que sólo usan el modo HTML del Editor de WordPress&#8230; Algunas veces, no podés simplemente deshabilitar el editor WYSIWYG (en mi caso, you no puedo hacerlo porque uso el plugin qTranslate para permitir la creación de posts en diferentes lenguajes)&#8230; Para esta gente, tener la hoja del editor [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" rel="bookmark" title="Hide WordPress Visual Editor Tab 1.01">Hide WordPress Visual Editor Tab 1.01 </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-fix-the-you-do-not-have-sufficient-permissions-to-access-this-page-message-in-wordpress/" rel="bookmark" title="Cómo solucionar el mensaje &#8220;No tiene los permisos necesarios para acceder a esta página&#8221; en WordPress">Cómo solucionar el mensaje &#8220;No tiene los permisos necesarios para acceder a esta página&#8221; en WordPress </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Hay un montón de personas (como yo) que sólo usan el modo HTML del Editor de WordPress&#8230; Algunas veces, no podés simplemente deshabilitar el editor WYSIWYG (en mi caso, you no puedo hacerlo porque uso el <a href="http://www.qianqin.de/qtranslate/">plugin qTranslate</a> para permitir la creación de posts en diferentes lenguajes)&#8230; Para esta gente, tener la hoja del editor visual podría ser un gran problema&#8230;</p>
<p>Supongamos que estás escribiendo un post en el modo HTML&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Remove_Visual_Tab_HTML.png" alt="Remove_Visual_Tab_HTML" title="Remove_Visual_Tab_HTML" width="499" height="207" class="aligncenter size-full wp-image-1176" /></p>
<p>Y hacés click por error en la hoja &#8220;Visual&#8221;&#8230;</p>
<p><span id="more-1173"></span></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Remove_Visual_Tab_Visual.png" alt="Remove_Visual_Tab_Visual" title="Remove_Visual_Tab_Visual" width="500" height="207" class="aligncenter size-full wp-image-1175" /></p>
<p>Cuando volvés al modo HTML, vas a ver, probablemente con un poco de bronca, que todo to codigo se rompió&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Remove_Visual_Tab_HTML_Broken.png" alt="Remove_Visual_Tab_HTML_Broken" title="Remove_Visual_Tab_HTML_Broken" width="499" height="218" class="aligncenter size-full wp-image-1177" /></p>
<p>Entonces, cuál es la solución para evitar que este problema vuelva a suceder&#8230; Bueno, qué mejor que simplemente remover la hoja?</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Remove_Visual_Tab_Removed.png" alt="Remove_Visual_Tab_Removed" title="Remove_Visual_Tab_Removed" width="499" height="208" class="aligncenter size-full wp-image-1178" /></p>
<p>Prepare un script para hacer esto&#8230; No lo hice como plugin para WordPress por dos razones: primero, para evitar hacer que el server trabaje más sin razón por cosas que podés hacer fácilmente del lado del client y, segundo, para permitir sin complicaciones que los diferentes usuarios del blog puedan elegir el método que prefieran para escribir (quizás algunos usuarios sí utilicen el editor visual)&#8230;</p>
<p><br/><br />
<a href="http://www.firefox.com/"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Firefox_small.png" alt="Firefox_small" title="Firefox_small" width="69" height="69" class="alignleft size-full wp-image-880" /></a> Este script requiere <a href="http://www.firefox.com/">Firefox</a> y la extensión <a href="https://addons.mozilla.org/firefox/addon/748">GreaseMonkey</a> (Realmente recomiendo instalarla ya que te da la posibilidad de ejecutar este tipo de &#8220;script personalizadores de sitios&#8221;)&#8230;</p>
<p><br/><br />
Antes que nada, asumiendo que tenés Firefox instalado, hay que instalar la extensión GreaseMonkey (hacer click en &#8220;Agregar a Firefox&#8221; en el siguiente link):</p>
<div align="center">
<p class="download"><a href="https://addons.mozilla.org/firefox/addon/748">Extensión GreaseMonkey para Firefox</a></p>
</div>
<p><br/><br />
Luego, una vez que ya esté instalada y ejecutándose (hay que reiniciar Firefox cuando nos lo pide), en la barra de estado va a haber una cara de un mono en colores (si está en gris, tenés que habilitar el motor haciéndole click):</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/GreaseMonkey_On.png" alt="GreaseMonkey_On" title="GreaseMonkey_On" width="227" height="22" class="aligncenter size-full wp-image-882" /></p>
<p>Después de eso, ya estás finalmente preparado para instalar el script&#8230;</p>
<p><br/><br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Como de costumbre, Hide WordPress Visual Editor Tab está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (adjunta)&#8230;</span></p>
<p><br/><br />
Ahora, finalmente, el link&#8230;</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/hide-wordpress-visual-editor-tab/hide-wordpress-visual-editor-tab-1.01.user.js">Hide WordPress Visual Editor Tab 1.01</a></p>
</div>
<p><strong>Actualización:</strong> nueva versión 1.01 que hace que también funcione al crear nuevos posts y páginas (antes sólo funcionaba al editarlos).<br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="wordpress remove visual tab">wordpress remove visual tab</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="wordpress disable visual tab">wordpress disable visual tab</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="remove visual tab wordpress">remove visual tab wordpress</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="disable visual tab wordpress">disable visual tab wordpress</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="remove html tab wordpress">remove html tab wordpress</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="eliminar hoja en visual">eliminar hoja en visual</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="wordpress remove visual editor">wordpress remove visual editor</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="wordpress remove HTML tab">wordpress remove HTML tab</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="access music on server from a client">access music on server from a client</a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/" title="wordpress hide html tab">wordpress hide html tab</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/wordpress/hide-wordpress-visual-editor-tab-1-01/" rel="bookmark" title="Hide WordPress Visual Editor Tab 1.01">Hide WordPress Visual Editor Tab 1.01 </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML)">Plugin de WordPress WP-No-Format (Evitar el Formateo/Modificación del Código HTML) </a></li>
<li><a href="http://www.neoegm.com/es/tech/wordpress/how-to-fix-the-you-do-not-have-sufficient-permissions-to-access-this-page-message-in-wordpress/" rel="bookmark" title="Cómo solucionar el mensaje &#8220;No tiene los permisos necesarios para acceder a esta página&#8221; en WordPress">Cómo solucionar el mensaje &#8220;No tiene los permisos necesarios para acceder a esta página&#8221; en WordPress </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/wordpress/how-to-remove-the-visual-tab-from-the-wordpress-post-page-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más)</title>
		<link>http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/</link>
		<comments>http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 05:00:18 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Online Tools]]></category>
		<category><![CDATA[Anchor]]></category>
		<category><![CDATA[Decode]]></category>
		<category><![CDATA[decodeURI]]></category>
		<category><![CDATA[decodeURIComponent]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Encode]]></category>
		<category><![CDATA[encodeURI]]></category>
		<category><![CDATA[encodeURIComponent]]></category>
		<category><![CDATA[Escape]]></category>
		<category><![CDATA[Force]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Intelligent]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Online]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Parameters]]></category>
		<category><![CDATA[Parse]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Unescape]]></category>
		<category><![CDATA[URL]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1078</guid>
		<description><![CDATA[Con esta herramienta online, podés hacerle fácilmente escape y unescape a tus strings (entre otras cosas muy útiles explicadas abajo)&#8230; Si querés agregar esta herramienta a tus favoritos, quizás prefieras esta dirección más corta: http://www.neoegm.com/software/intelligent-escaper-unescaper/. [Apretale botón derecho y utilizá la opción que te ofrezca tu navegador para agregarla a tus favoritos.] Como podrás ver, [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" rel="bookmark" title="Convertir de Celsius a Fahrenheit Online">Convertir de Celsius a Fahrenheit Online </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" rel="bookmark" title="Herramienta de Notificación de Visitas de Google Analytics">Herramienta de Notificación de Visitas de Google Analytics </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/php-random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias PHP">Generador de contraseñas aleatorias PHP </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Con esta herramienta online, podés hacerle fácilmente escape y unescape a tus strings (entre otras cosas muy útiles explicadas abajo)&#8230;</p>
<p>Si querés agregar esta herramienta a tus favoritos, quizás prefieras esta dirección más corta: <a href="http://www.neoegm.com/software/intelligent-escaper-unescaper/">http://www.neoegm.com/software/intelligent-escaper-unescaper/</a>. [Apretale botón derecho y utilizá la opción que te ofrezca tu navegador para agregarla a tus favoritos.]</p>
<p><script type="text/javascript" src="/scripts/intelligent-escaper-unescaper.js"></script></p>

<div align="center">
<p>
	<textarea name="escape_unescape_text" id="escape_unescape_text" cols="60" rows="10" sytle="width: 500px;"></textarea>
</p>
<p>
	<input type="button" name="Button" id="button" value="Escape" onclick="var field = document.getElementById('escape_unescape_text'); field.value = Escape(field.value);" />
	<input type="button" name="button2" id="button3" value="Escape (Forced)" onclick="var field = document.getElementById('escape_unescape_text'); field.value = Escape(field.value, true);" />
	<input type="button" name="button" id="button2" value="Unescape" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = unescape(field.value);" />
	</p>
<p>
	<input type="button" name="button5" id="button6" value="Escape URL" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeURL(field.value);" />
	<input type="button" name="button15" id="button16" value="Escape URL (Forced)" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeURL(field.value, true);" />
	<input type="button" name="button16" id="button17" value="Escape URL (Forced + Host)" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeURL(field.value, true, true);" />
</p>
<p>
	<input type="button" name="button6" id="button7" value="Intelligent Escape" onclick="var field = document.getElementById('escape_unescape_text'); field.value = IntelligentEscape(field.value);" />
	<input type="button" name="button7" id="button8" value="Intelligent Unescape" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = IntelligentUnescape(field.value);" />
</p>
<p>
	<input type="button" name="button3" id="button4" value="Parse URL Parameters" onclick="var field = document.getElementById('escape_unescape_text'); field.value = ParseURLParameters(field.value);" />
	<input type="button" name="button4" id="button5" value="Make URL with Parameters" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = MakeURLWithParameters(field.value);" />
	</p>
<p>
	<input type="button" name="button8" id="button9" value="Escape +" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeChar(field.value, '+');" />
	<input type="button" name="button13" id="button14" value="Escape #" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeChar(field.value, '#');" />
	<input type="button" name="button14" id="button15" value="Escape:" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = EscapeChar(field.value, document.getElementById('escape_unescape_char').value);" />
	<input name="escape_unescape_char" type="text" id="escape_unescape_char" value=":" size="1" maxlength="1" />
</p>
<p>
	<input type="button" name="button9" id="button10" value="encodeURI" onclick="var field = document.getElementById('escape_unescape_text'); field.value = encodeURI(field.value);" />
	<input type="button" name="button10" id="button11" value="decodeURI" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = decodeURI(field.value);" />
	<br/>
	<input type="button" name="button11" id="button12" value="encodeURIComponent" onclick="var field = document.getElementById('escape_unescape_text'); field.value = encodeURIComponent(field.value);" />
	<input type="button" name="button12" id="button13" value="decodeURIComponent" style="margin-left: 15px;" onclick="var field = document.getElementById('escape_unescape_text'); field.value = decodeURIComponent(field.value);" />
</p>
</div>
<p><span id="more-1078"></span></p>
<p>Como podrás ver, hay varias functionalidades&#8230; Ahora las voy a explicar una por una&#8230;</p>
<h4>Escape</h4>
<p>Llama a la función de Javascript <a href="http://www.w3schools.com/jsref/jsref_escape.asp">escape</a>, que codifica los caracteres especiales (con ciertas exceptiones).</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">Hello, this is a test</pre>
<pre class="brush: plain; light: true; title: ; notranslate">Hello%2C%20this%20is%20a%20test</pre>
<h4>Escape (Forced)</h4>
<p>Codifíca <strong>todos</strong> los caracteres, sin importar si son especiales o no. Ideal para hacer que las strings no sean fáciles de leer.</p>
<p>Example:</p>
<pre class="brush: plain; light: true; title: ; notranslate">Hello, this is a test</pre>
<pre class="brush: plain; light: true; title: ; notranslate">%48%65%6C%6C%6F%2C%20%74%68%69%73%20%69%73%20%61%20%74%65%73%74</pre>
<h4>Unescape</h4>
<p>Llama a la función de Javascript <a href="http://www.w3schools.com/jsref/jsref_unescape.asp">unescape</a>, que decodifica todos los caracteres codificados. (Los que tienen la forma %XX o %uXXXX).</p>
<p>Ejemplo 1:</p>
<pre class="brush: plain; light: true; title: ; notranslate">Hello%2C%20this%20is%20a%20test</pre>
<pre class="brush: plain; light: true; title: ; notranslate">Hello, this is a test</pre>
<p>Ejemplo 2:</p>
<pre class="brush: plain; light: true; title: ; notranslate">%48%65%6C%6C%6F%2C%20%74%68%69%73%20%69%73%20%61%20%74%65%73%74</pre>
<pre class="brush: plain; light: true; title: ; notranslate">Hello, this is a test</pre>
<h4>Escape URL</h4>
<p>Codifica los caracteres especiales, pero respetando la sintaxis de una URL. No es lo mismo que la opción &#8220;encodeURI&#8221;, ya que esta llama a la función de Javascript <a href="http://www.w3schools.com/jsref/jsref_encodeURI.asp">encodeURI</a>, la cual no codifica los siguientes caracteres: </p>
<pre class="brush: plain; light: true; title: ; notranslate">; , / ? : @ &amp; = + $ - _ . ! ~ * ' ( ) #</pre>
<p>Mientras que esta simplemente no los codifica cuando corresponde. Soporta parámetros, anchors y caracteres Unicode.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:84/This is my file named niño: the named place.doc</pre>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:84/This%20is%20my%20file%20named%20ni%F1o%3A%20the%20named%20place.doc</pre>
<h4>Escape URL (Forced)</h4>
<p>Similar a &#8220;Escape URL&#8221;, pero forzando la codificación de caracteres normales lo más posible (sin incluir el host). Ideal para hacer difíciles de leer a simple vista las URLs.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:84/This is my file named niño: the named place.doc</pre>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:84/%54%68%69%73%20%69%73%20%6D%79%20%66%69%6C%65%20%6E%61%6D%65%64%20%6E%69%F1%6F%3A%20%74%68%65%20%6E%61%6D%65%64%20%70%6C%61%63%65%2E%64%6F%63</pre>
<h4>Escape URL (Forced + Host)</h4>
<p>Similar a &#8220;Escape URL&#8221;, pero forzando la codificación de caracteres normales lo más posible (host incluído). Ideal para hacer difíciles de leer a simple vista las URLs.</p>
<p><strong>Nota:</strong> esta sintaxis no es compatible con algunos Navegadores.</p>
<p><em>Navegadores compatibles:</em> Internet Explorer, Google Chrome.<br />
<em>Navegadores no compatibles:</em> Firefox, Lynx.</p>
<p>En el caso de Firefox, la string se decodifica correctamente en la barra de direcciones, pero no se abre, hay que volver a abrirla con la dirección ya decodificada (seleccionándola y presionando Enter). Si el host no contiene ningún punto, se agrega automáticamente &#8220;www.&#8221; y &#8220;.com&#8221;.</p>
<p>Si tenés información de compatibilidad de algún otro browser, por favor avisame así la agrego.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:84/This is my file named niño: the named place.doc</pre>
<pre class="brush: plain; light: true; title: ; notranslate">http://%77%77%77.%65%78%61%6D%70%6C%65.%63%6F%6D:84/%54%68%69%73%20%69%73%20%6D%79%20%66%69%6C%65%20%6E%61%6D%65%64%20%6E%69%F1%6F%3A%20%74%68%65%20%6E%61%6D%65%64%20%70%6C%61%63%65%2E%64%6F%63</pre>
<h4>Intelligent Escape</h4>
<p>Esta función es una versión inteligente de &#8220;Escape&#8221;. Codifica los caracteres correspondientes, pero sin recodificar los datos que ya lo estaban.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">Partially%22%20encoded%20string. And I added this part.</pre>
<pre class="brush: plain; light: true; title: ; notranslate">Partially%22%20encoded%20string.%20And%20I%20added%20this%20part.</pre>
<p>Si hubiéramos utilizado &#8220;Escape&#8221; habríamos obtenido:</p>
<pre class="brush: plain; light: true; title: ; notranslate">Partially%2522%2520encoded%2520string.%20And%20I%20added%20this%20part.</pre>
<h4>Intelligent Unescape</h4>
<p>Llama a la función de Javascript <a href="http://www.w3schools.com/jsref/jsref_unescape.asp">unescape</a> repetidamente hasta que no haya nada restante para decodificar. Útil para cuando una string fue codificada varias veces.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">%25%34%38%25%36%35%25%36%43%25%36%43%25%36%46</pre>
<pre class="brush: plain; light: true; title: ; notranslate">Hello</pre>
<p>Si hubiéramos utilizado &#8220;Unescape&#8221; habríamos obtenido:</p>
<pre class="brush: plain; light: true; title: ; notranslate">%48%65%6C%6C%6F</pre>
<h4>Parse URL Parameters</h4>
<p>Rompe una URL en sus correspondientes parámetros. El anchor es dejado al final sin hacerle unescape.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:81/path/path/hello.php?a=3&amp;b=Good%20Morning&amp;c=El%20Ni%F1o#test-anchor</pre>
<pre class="brush: plain; light: true; title: ; notranslate">
http://www.example.com:81/path/path/hello.php

a=3
b=Good Morning
c=El Niño

#test-anchor
</pre>
<h4>Make URL with Parameters</h4>
<p>Reconstruye una URL basándose en los datos especificados: URL + parámetros + anchor.</p>
<p>Ejemplo:</p>
<pre class="brush: plain; light: true; title: ; notranslate">
http://www.example.com:81/path/path/hello.php

a=3
b=Good Morning
c=El Niño

#test-anchor
</pre>
<pre class="brush: plain; light: true; title: ; notranslate">http://www.example.com:81/path/path/hello.php?a=3&amp;b=Good%20Morning&amp;c=El%20Ni%F1o#test-anchor</pre>
<h4>Escape +</h4>
<p>Codifica los caracteres +. Estos no son codificados por el resto de las funciones, a excepción de &#8220;Escape (Forced)&#8221;.</p>
<h4>Escape #</h4>
<p>Codifica los caracteres #. Estos no son codificados por el resto de las funciones, a excepción de &#8220;Escape (Forced)&#8221;.</p>
<h4>Escape: &lt;char&gt;</h4>
<p>Codifica los caracteres especificados en el cuadro de texto.</p>
<h4>encodeURI</h4>
<p>Llama a la función de Javascript <a href="https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Functions/encodeURI">encodeURI</a>.</p>
<h4>decodeURI</h4>
<p>Llama a la función de Javascript <a href="https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Functions/decodeURI">decodeURI</a>.</p>
<h4>encodeURIComponent</h4>
<p>Llama a la función de Javascript <a href="https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Functions/encodeURIComponent">encodeURIComponent</a>.</p>
<h4>decodeURIComponent</h4>
<p>Llama a la función de Javascript <a href="https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Functions/decodeURIComponent">decodeURIComponent</a>.</p>
<p><br/><br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Intelligent Escaper-Unescaper está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (adjunta)&#8230;</span></p>
<p><br/></p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/intelligent-escaper-unescaper/intelligent-escaper-unescaper.js">Descargar Código Fuente v1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/intelligent-escaper-unescaper/Intelligent_Escaper-Unescaper_1.0.zip">Descargar Versión Local v1.0</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="unescape online">unescape online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="url escape online">url escape online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="DEcodeURIComponent ONLINE">DEcodeURIComponent ONLINE</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="unescaper">unescaper</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="XML unescape online">XML unescape online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="unescape xml online">unescape xml online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="decodificar unescape">decodificar unescape</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="url escape tool">url escape tool</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="escape url online">escape url online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" title="intelligent url escaper">intelligent url escaper</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" rel="bookmark" title="Convertir de Celsius a Fahrenheit Online">Convertir de Celsius a Fahrenheit Online </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/google-analytics-visits-notification-tool/" rel="bookmark" title="Herramienta de Notificación de Visitas de Google Analytics">Herramienta de Notificación de Visitas de Google Analytics </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/php-random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias PHP">Generador de contraseñas aleatorias PHP </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.1</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 12:22:30 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=995</guid>
		<description><![CDATA[Acabo de actualizar el script para Mover el Recuadro de Eventos de Facebook hacia Arriba a la versión 1.1 para solucionar el problema que hacía que el recuadro de eventos no subiera algunas veces al cargar la página o refrescar. Visitá el post original para descargar la versión actualizada. Ir al post original Incoming search [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p>Acabo de actualizar el script para <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Mover el Recuadro de Eventos de Facebook hacia Arriba</a> a la versión 1.1 para solucionar el problema que hacía que el recuadro de eventos no subiera algunas veces al cargar la página o refrescar.</p>
<p>Visitá el <a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">post original</a> para descargar la versión actualizada.</p>
<div align="center">
<p class="download"><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/">Ir al post original</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" title="Degree Celsius">Degree Celsius</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" title="get events box facebook">get events box facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/" title="Pinball Games Free">Pinball Games Free</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2-1/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2.1 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clase Lista simple para C++</title>
		<link>http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/</link>
		<comments>http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 20:55:36 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Console]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Exercise]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Include]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[List]]></category>
		<category><![CDATA[Memory Leaks]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Portable]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Teaching]]></category>
		<category><![CDATA[wxDev]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=976</guid>
		<description><![CDATA[Tal como publiqué hace algunos días la Clase String Simple para C++ como un ejercicio de aprendizaje de C++, ahora estoy liberando una Clase Lista simple para C++. La librería standard tiene una clase list. Pero, mientras se está aprendiendo, es una buena idea saber cómo poder desarrollar tu propia clase list. Esa es la [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" rel="bookmark" title="cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++">cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/control-de-asistencia/" rel="bookmark" title="Control de Asistencia">Control de Asistencia </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Tal como publiqué hace algunos días la <a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/">Clase String Simple para C++</a> como un ejercicio de aprendizaje de C++, ahora estoy liberando una <strong>Clase Lista simple para C++</strong>.</p>
<p>La librería standard tiene una clase <em>list</em>. Pero, mientras se está aprendiendo, es una buena idea saber cómo poder desarrollar tu propia clase <em>list</em>.</p>
<p>Esa es la razón por la que hice la clase <em>List</em>. No está pensada para proyectos profesionales (para ellos, deberías utilizar la <em>list</em> de la librería standard), sino como una ayuda para aprender C++.</p>
<pre class="brush: cpp; title: ; notranslate">
template &lt;class TYPE&gt;
class List
{
	/* ... */

public:
	//Construction and destruction
	List() { /* ... */ }
	~List() { /* ... */ }
	
	List(const List&amp; rlList) { /* ... */ }
	
	//Assignment operator
	List&amp; operator=(const List&amp; rlList);

	//Information
	int Length() { /* ... */ }
	bool Empty() { /* ... */ }

	//Element managing
	int Add(TYPE&amp; rtData);
	TYPE* Elem(int nPos);
	bool Delete(int nPos);
	void DeleteAll();
	
	//Search
	int Find(TYPE&amp; rItem, int nStartAt = 0);

	//Operadores
	TYPE&amp; operator[](int nPos) { /* ... */ }	//Elem
	int operator&lt;&lt;(TYPE&amp; rdData) { /* ... */ }	//Add

protected:
	void FreeList();
	void Init() { /* ... */ }
};

//Output
template &lt;class TYPE&gt;
std::ostream&amp; operator&lt;&lt;(std::ostream&amp; oStream, List&lt;TYPE&gt;&amp; rlList);
</pre>
<p><span id="more-976"></span></p>
<p>Este es un proyecto de ejemplo hecho para explicar la utilización de la clase <em>List</em>.</p>
<pre class="brush: cpp; title: ; notranslate">
#include &lt;iostream&gt;
	using std::cout;
	using std::cin;
	using std::endl;

#include &quot;List.h&quot;
#include &quot;String.h&quot;

int main(int argc, char *argv[])
{
	cout &lt;&lt; &quot;List sample project&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;-------------------&quot; &lt;&lt; endl &lt;&lt; endl;


	//-----------------------------
	cout &lt;&lt; &quot;&gt; Creating a list of strings... An empty string finishes the list...&quot; &lt;&lt; endl &lt;&lt; endl;

	List&lt;String&gt; lStrings;
	String sTmp;
	
	do
	{
		cout &lt;&lt; &quot;&gt; String &quot; &lt;&lt; lStrings.Length()+1 &lt;&lt; &quot;: &quot;;
		cin &gt;&gt; sTmp;
		
		if (sTmp.Length())
			lStrings.Add(sTmp);
	} while (sTmp.Length());
	
	cout &lt;&lt; endl &lt;&lt; &quot;&gt; Entry finished. &quot; &lt;&lt; lStrings.Length() &lt;&lt; &quot; string(s) loaded.&quot; &lt;&lt; endl &lt;&lt; endl;
	
	cout &lt;&lt; &quot;&gt; Printing list...&quot; &lt;&lt; endl &lt;&lt; endl;
	
	cout &lt;&lt; lStrings;

	cout &lt;&lt; endl;
	//-----------------------------
	
	
	//-----------------------------
	do
	{
		cout &lt;&lt; &quot;&gt; Type a string to find in the list (exact match) [empty = end]: &quot;;
		cin &gt;&gt; sTmp;

		if (sTmp.Length())
		{
			int nFound = lStrings.Find(sTmp);
			
			if (nFound != -1)
			{
				lStrings.Delete(nFound);

				cout &lt;&lt; &quot;&gt; String \&quot;&quot; &lt;&lt; sTmp &lt;&lt; &quot;\&quot; found at position &quot; &lt;&lt; nFound+1 &lt;&lt; &quot; and removed.&quot; &lt;&lt; endl &lt;&lt; endl;
				
				cout &lt;&lt; &quot;&gt; Printing list...&quot; &lt;&lt; endl &lt;&lt; endl;

				if (!lStrings.Empty())
					cout &lt;&lt; lStrings;
				else
				{
					cout &lt;&lt; &quot;[Empty list]&quot; &lt;&lt; endl &lt;&lt; endl;
					break;
				}
			}
			else
				cout &lt;&lt; &quot;&gt; String \&quot;&quot; &lt;&lt; sTmp &lt;&lt; &quot;\&quot; not found.&quot; &lt;&lt; endl;
		}
		
		cout &lt;&lt; endl;
	} while (sTmp.Length());
	
	cout &lt;&lt; endl;
	//-----------------------------

	//-----------------------------
	cout &lt;&lt; &quot;&gt; Now getting a bit more complex... Let's create a list of lists of strings... An empty string finishes the list and an empty first string finishes the list of lists...&quot; &lt;&lt; endl &lt;&lt; endl;

	List&lt; List&lt;String&gt; &gt; lLists;
	List&lt;String&gt; lTmpList;
	int nStrings = 0;

	do
	{
		lTmpList.DeleteAll();
		
		cout &lt;&lt; &quot;&gt; Loading list &quot; &lt;&lt; lLists.Length()+1 &lt;&lt; &quot;...&quot; &lt;&lt; endl;
		
		do
		{
			cout &lt;&lt; &quot;\t&gt; String &quot; &lt;&lt; lTmpList.Length()+1 &lt;&lt; &quot;: &quot;;
			cin &gt;&gt; sTmp;
			
			if (sTmp.Length())
			{
				lTmpList.Add(sTmp);
				nStrings++;
			}
		} while (sTmp.Length());
		
		if (lTmpList.Length())
			lLists.Add(lTmpList);
	} while (lTmpList.Length());
	
	cout &lt;&lt; endl &lt;&lt; &quot;&gt; Entry finished. &quot; &lt;&lt; lLists.Length() &lt;&lt; &quot; list(s) loaded, &quot; &lt;&lt; nStrings &lt;&lt; &quot; string(s) loaded.&quot; &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

	cout &lt;&lt; &quot;&gt; Printing lists (standard method)...&quot; &lt;&lt; endl &lt;&lt; endl;

	cout &lt;&lt; lLists;

	cout &lt;&lt; endl;
	
	cout &lt;&lt; &quot;&gt; Printing lists (custom method)...&quot; &lt;&lt; endl &lt;&lt; endl;
	
	for (int i = 0; i &lt; lLists.Length(); i++)
	{
		List&lt;String&gt; *plList = lLists.Elem(i);

		if (plList)
		{
			cout &lt;&lt; &quot;- List &quot; &lt;&lt; i &lt;&lt; endl &lt;&lt; endl;
			cout &lt;&lt; *plList;
			cout &lt;&lt; endl;
		}
	}
	//-----------------------------

    return 0;
}
</pre>
<p>Y esta su salida:</p>

<pre class="console">
List sample project
-------------------

> Creating a list of strings... An empty string finishes the list...

> String 1: Test 1
> String 2: Test 2
> String 3: Test 3, a little bit longer
> String 4:

> Entry finished. 3 string(s) loaded.

> Printing list...

Test 1
Test 2
Test 3, a little bit longer

> Type a string to find in the list (exact match) [empty = end]: Hello
> String "Hello" not found.

> Type a string to find in the list (exact match) [empty = end]: Test 1
> String "Test 1" found at position 1 and removed.

> Printing list...

Test 2
Test 3, a little bit longer

> Type a string to find in the list (exact match) [empty = end]: Test 1
> String "Test 1" not found.

> Type a string to find in the list (exact match) [empty = end]: test 2
> String "test 2" not found.

> Type a string to find in the list (exact match) [empty = end]: Test 2
> String "Test 2" found at position 1 and removed.

> Printing list...

Test 3, a little bit longer

> Type a string to find in the list (exact match) [empty = end]: Test 3, a little bit longer
> String "Test 3, a little bit longer" found at position 1 and removed.

> Printing list...

[Empty list]


> Now getting a bit more complex... Let's create a list of lists of strings... An empty string finishes the list and an empty first string finishes the list of lists...

> Loading list 1...
        > String 1: Test 1a
        > String 2: Test 1b
        > String 3: Test 1c
        > String 4:
> Loading list 2...
        > String 1: Test 2a
        > String 2: Test 2b
        > String 3: Test 2c
        > String 4: Test 2d
        > String 5:
> Loading list 3...
        > String 1: Test 3a
        > String 2: Test 3b
        > String 3: This is a looooooooooooooooooooooong string
        > String 4:
> Loading list 4...
        > String 1:

> Entry finished. 3 list(s) loaded, 10 string(s) loaded.


> Printing lists (standard method)...

Test 1a
Test 1b
Test 1c

Test 2a
Test 2b
Test 2c
Test 2d

Test 3a
Test 3b
This is a looooooooooooooooooooooong string


> Printing lists (custom method)...

- List 0

Test 1a
Test 1b
Test 1c

- List 1

Test 2a
Test 2b
Test 2c
Test 2d

- List 2

Test 3a
Test 3b
This is a looooooooooooooooooooooong string

</pre>
<p>Este proyecto también utiliza la <a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/">Clase String simple para C++</a> para mostrar a la clase List trabajando con clases personales. El mismo código podría utilizarse perfectamente reemplazando &#8220;String&#8221; por &#8220;string&#8221; e incluyendo los headers de la versión standard de <em>string</em>.</p>
<p>El código es completamente portable.</p>
<p>Ha sido desarrollado, compilado y testeado utilizando <a href="http://wxdsgn.sourceforge.net/">wxDev-C++</a> para Windows con el <a href="http://www.mingw.org/">compilador MinGW</a> (incluído en el paquete). En Linux, fue compilado utilizando el compilador GNU GCC.</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">String está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p><br/><br />
También probé el proyecto para verificar la ausencia de fugas de memoria utilizando el <a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/">cppMemDbg – Librería fácil de usar de detección de fugas de memoria para C++</a> y no encontró ningún tipo de problema&#8230;</p>
<p>Podés descargar la salida de la librería y el proyecto adaptado para cppMemDbg aquí:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/list-class/List_Sample_Project_cppMemDbg_Output.txt">Descargar salida de cppMemDbg</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/list-class/List_Sample_Project_1.0_cppMemDbg.zip">Descargar Proyecto Adaptado 1.0</a></p>
</div>
<p><br/><br />
Ahora, finalmente, los links de descarga:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/list-class/List_1.0.zip">Descargar Clase List 1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/list-class/List_Sample_Project_1.0.zip">Descargar Proyecto de Ejemplo 1.0</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="c list class">c list class</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="list class c">list class c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="class list c">class list c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="lista simple c">lista simple c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="clase lista c">clase lista c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="LISTA SIMPLE EN C">LISTA SIMPLE EN C</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="listas simples en c">listas simples en c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="clase lista en c">clase lista en c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="c class list">c class list</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" title="list class in c">list class in c</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" rel="bookmark" title="cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++">cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/control-de-asistencia/" rel="bookmark" title="Control de Asistencia">Control de Asistencia </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cracker para el Pinball 3D de Windows (Cadete del Espacio) &#8211; Cómo Modificar los Puntajes</title>
		<link>http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/</link>
		<comments>http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 19:43:13 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Game Cheating]]></category>
		<category><![CDATA[.NET Framework]]></category>
		<category><![CDATA[3D]]></category>
		<category><![CDATA[Cheat]]></category>
		<category><![CDATA[Cracker]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Export]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Game]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Hall of Fame]]></category>
		<category><![CDATA[High Scores]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Pinball]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Trainer]]></category>
		<category><![CDATA[VB.NET]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=942</guid>
		<description><![CDATA[Todo el mundo conoce el juego de Pinball que apareció con el Windows 95 Plus!&#8230; Todavía está en las versiones actuales de Windows&#8230; A pesar de que pueda parecer increíble, todavía hay unos cuántos fanáticos de este juego&#8230; Hice este programa en 1999 (hace un tiempito 8-)) para poder modificar los puntajes máximos guardados y [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer (Entrenador de Guitarra)">Guitar Trainer (Entrenador de Guitarra) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" rel="bookmark" title="Office Document Property Resetter (Reseteador de propiedades de archivos de Office)">Office Document Property Resetter (Reseteador de propiedades de archivos de Office) </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Todo el mundo conoce el juego de Pinball que apareció con el Windows 95 Plus!&#8230; Todavía está en las versiones actuales de Windows&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Game.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Game-300x233.png" alt="Pinball_Cracker_Game" title="Pinball_Cracker_Game" width="300" height="233" class="aligncenter size-medium wp-image-952" /></a></p>
<p>A pesar de que pueda parecer increíble, todavía hay unos cuántos fanáticos de este juego&#8230;</p>
<p>Hice este programa en 1999 (hace un tiempito 8-)) para poder modificar los puntajes máximos guardados y lograr así que esos fanáticos crean que les ganamos&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Game_High_Scores.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Game_High_Scores-300x234.png" alt="Pinball_Cracker_Game_High_Scores" title="Pinball_Cracker_Game_High_Scores" width="300" height="234" class="aligncenter size-medium wp-image-953" /></a></p>
<p>(Es recomendable ser un poco más sutil que yo)</p>
<p><span id="more-942"></span></p>
<p>Antes de empezar, quiero aclarar que que escribí este programa cuando tenía 13 años, así que quedo liberado de cualquier tipo de crítica&#8230; Ahora, luego de esa aclaración fundamental, podemos seguir&#8230;</p>
<p>Este programa es muy fácil de usar&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Main.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Main-300x224.png" alt="Pinball_Cracker_Main" title="Pinball_Cracker_Main" width="300" height="224" class="aligncenter ft size-medium wp-image-945" /></a></p>
<p>Pero tiene algunas funcionalidades ocultas que lo hacen un poco más poderoso&#8230;</p>
<p>Hay 3 &#8220;easter eggs&#8221; (trucos ocultos) (parece ser que realmente me divertía escribiéndolos) que desbloquean 3 opciones especiales&#8230; Tienen que ser realizados en el siguiente orden, de otro modo no van a funcionar&#8230;</p>
<p>Antes que nada, hay que abrir la pantalla de &#8220;About&#8221; y esperar que el texto haya pasado 5 veces (se puede hacer que vaya más rápido presionando Shift+U varias veces)&#8230; Si tenés el Caps Lock prendido, no debés usar el shift para presionar la U&#8230; (Como un dato aparte, y sin demasiado sentido, se lo puede volver a enlentecer usando Shift+D)</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_1.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_1-300x65.png" alt="Pinball_Cracker_About_1" title="Pinball_Cracker_About_1" width="300" height="65" class="aligncenter size-medium wp-image-946" /></a></p>
<p>Luego, tenés que hacer click secuencialmente en las 4 cruces de las esquinas en el siguiente orden: inferior-derecha, superior-izquierda, superior-derecha, inferior-izquierda. Igualmente, si comenzás con la inferior-derecha, las líneas te van a guiar. Esto va a habilitar el primer &#8220;truco&#8221;, que desbloquea la opción &#8220;Show Verification Code&#8221; en la pantalla principal. El código de verificación es un tipo de &#8220;checksum&#8221; utilizada por el juego para verificar que no modificaste los puntajes.</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_2.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_2-300x65.png" alt="Pinball_Cracker_About_2" title="Pinball_Cracker_About_2" width="300" height="65" class="aligncenter size-medium wp-image-947" /></a></p>
<p>El segundo truco es el más fácil&#8230; Tenés que hacer click derecho sobre la cruz superior-derecha mientras mantenés presionado Shift y, luego, soltarlo y hacer click con el botón izquierdo sobre la cruz inferior-derecha. La opción &#8220;Print Hall of Fame&#8221; va a desbloquearse&#8230; Es una funcionalidad completamente inútil, pero parece que quería desarrollar mir habilidades de impresión en ese momento&#8230; Así que no pregunten <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_3.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_3-300x65.png" alt="Pinball_Cracker_About_3" title="Pinball_Cracker_About_3" width="300" height="65" class="aligncenter size-medium wp-image-948" /></a></p>
<p>Finalmente, el último &#8220;easter egg&#8221; (y el más útil de todos) se desbloquea haciendo los siguientes pasos: con el foco (el rectángulo punteado) en el botón superior, presionar Shift+P (nuevamente la misma salvedad del Caps Lock)&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_4.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_4-300x65.png" alt="Pinball_Cracker_About_4" title="Pinball_Cracker_About_4" width="300" height="65" class="aligncenter size-medium wp-image-949" /></a></p>
<p>Luego, mover el foco al siguiente botón presionando Tab y apretar Shift+C&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_5.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_About_5-300x65.png" alt="Pinball_Cracker_About_5" title="Pinball_Cracker_About_5" width="300" height="65" class="aligncenter size-medium wp-image-950" /></a></p>
<p>Eso es todo&#8230; Ahora vas a haber habilitado la posibilidad de exportar los puntajes a un archivo .REG que podés simplemente doble-clickear en cualquier computadora para establecer los nuevos puntajes&#8230;</p>
<p>Así es como se va a ver la pantalla principal&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Cheats.png" rel="lightbox[942]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Pinball_Cracker_Cheats-300x274.png" alt="Pinball_Cracker_Cheats" title="Pinball_Cracker_Cheats" width="300" height="274" class="aligncenter size-medium wp-image-951" /></a></p>
<p>Este programa fue originalmente escrito en Visual Basic 6, así que abrí el proyecto, lo actualicé al .NET Framework 2.0 (VB.NET) y después arreglé algunos bugs, corregí algunas cosas y lo preparé para publicar&#8230; Estoy liberando el código fuente sólo para aquellos que puedan tener curiosidad, pero no recomiendo que se lo tome como modelo de nada&#8230;</p>
<p>Para ejecutarlo, vas a necesitar el <a href="http://www.microsoft.com/downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5">.NET Framework 2.0</a> y el <a href="http://download.neoegm.com/redistributables/VisualBasicPowerPacksSetup.exe">Microsoft Visual Basic PowerPacks 1.2</a>.</p>
<p><strong>ACTUALIZACION:</strong> Acabo de subir el <a href="http://download.neoegm.com/redistributables/VisualBasicPowerPacksSetup.exe">archivo instalador del Visual Basic PowerPacks</a> ya que los ofrecidos online por Mícrosoft (2.0 &#038; 3.0) no satisfacían las dependencias requeridas. Parecen ser diferentes cosas. Este instalador es necesario para poder abrir el diálogo de About y debloquear las funciones especiales.</p>
<p><br/><br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Como de costumbre, Pinball Cracker está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (adjunta)&#8230;</span><br />
<br/></p>
<p>Acá están los links de descarga:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/pinball-cracker/Pinball_Cracker_1.0.zip">Descargar Pinball Cracker v1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/pinball-cracker/Pinball_Cracker_1.0_Source.zip">Descargar Código Fuente v1.0</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="pinball 3d">pinball 3d</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="pinball cheats">pinball cheats</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="3D pinball">3D pinball</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="pinball windows 95">pinball windows 95</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="3D Pinball Cheats">3D Pinball Cheats</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="pinball high scores">pinball high scores</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="3D Pinball Space Cadet Cheats">3D Pinball Space Cadet Cheats</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="3d pinball space cadet">3d pinball space cadet</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="pinball cheat">pinball cheat</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/" title="windows 95 pinball">windows 95 pinball</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer (Entrenador de Guitarra)">Guitar Trainer (Entrenador de Guitarra) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" rel="bookmark" title="Office Document Property Resetter (Reseteador de propiedades de archivos de Office)">Office Document Property Resetter (Reseteador de propiedades de archivos de Office) </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/software/tools/game-cheating/3d-pinball-for-windows-space-cadet-cracker-how-to-modify-high-scores/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convertir de Celsius a Fahrenheit Online</title>
		<link>http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/</link>
		<comments>http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 13:34:18 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Online Tools]]></category>
		<category><![CDATA[Celsius]]></category>
		<category><![CDATA[Convert]]></category>
		<category><![CDATA[Fahrenheit]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Online]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Temperature]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=904</guid>
		<description><![CDATA[Debido a que estuve bastantes visitas en mi versión wxWidgets del conversor de Celsius a Fahrenheit, decidí preparar una versión online que permita realizar fácilmente la conversión. Celsius: Fahrenheit: Convert Celsius to Fahrenheit Online está liberado bajo la licencia GNU GPL v3&#8230; Acá está el código fuente completo: Incoming search terms for the article: convertir [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/celsius-to-fahrenheit/" rel="bookmark" title="Celsius a Fahrenheit">Celsius a Fahrenheit </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" rel="bookmark" title="Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más)">Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más) </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias">Generador de contraseñas aleatorias </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Debido a que estuve bastantes visitas en mi <a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/celsius-to-fahrenheit/">versión wxWidgets del conversor de Celsius a Fahrenheit</a>, decidí preparar una versión online que permita realizar fácilmente la conversión.</p>

<script type="text/javascript">
function isNumber(x)
{ 
  return ( (typeof x === typeof 1) && (null !== x) && isFinite(x) );	//From http://snippets.dzone.com/posts/show/6937
}

function Round(number, digits)
{
	return Math.round(number * Math.pow(10,digits)) / Math.pow(10, digits);
}

function CelsiusToFahrenheit(celsius, fahrenheit)
{
	var num = celsius.value;
	
	if (num == "" || !isNumber(Number(num)))
		alert("Por favor ingresar un número");
	else
		fahrenheit.value=Round((9/5)*num+32, 2);
}

function FahrenheitToCelsius(fahrenheit, celsius)
{
	var num = fahrenheit.value;
	
	if (num == "" || !isNumber(Number(num)))
		alert("Por favor ingresar un número");
	else
		celsius.value=Round((5/9)*(num-32), 2);
}
</script>
<table>
<tr>
<td>Celsius:</td>
<td><input type="text" name="celsius_field" id="celsius_field" style="width:100px" /></td>
<td><input type="button" value="A Fahrenheit" onclick="CelsiusToFahrenheit($('celsius_field'), $('fahrenheit_field'))" /></td>
</tr>
<tr>
<td>Fahrenheit:</td>
<td><input type="text" name="fahrenheit_field" id="fahrenheit_field" style="width:100px" /></td>
<td><input type="button" value="A Celsius" onclick="FahrenheitToCelsius($('fahrenheit_field'), $('celsius_field'))" /></td>
</tr>
</table>
<p><br/><br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Convert Celsius to Fahrenheit Online está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a>&#8230;</span></p>
<p>Acá está el código fuente completo:</p>
<pre class="brush: jscript; collapse: true; light: false; title: ; toolbar: true; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
// *****************************************************************************
// Description: Convertir de Celsius a Fahrenheit Online by NeoEGM
// Author: Ezequiel Miravalles
// Last modification: 16/08/2009
// URL: http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/
// *****************************************************************************

/*******************************************************************************
	Copyright (C) 2009 Ezequiel Gastón Miravalles

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.
*******************************************************************************/

function isNumber(x)
{ 
  return ( (typeof x === typeof 1) &amp;&amp; (null !== x) &amp;&amp; isFinite(x) );	//From http://snippets.dzone.com/posts/show/6937
}

function Round(number, digits)
{
	return Math.round(number * Math.pow(10,digits)) / Math.pow(10, digits);
}

function CelsiusToFahrenheit(celsius, fahrenheit)
{
	var num = celsius.value;
	
	if (num == &quot;&quot; || !isNumber(Number(num)))
		alert(&quot;Por favor ingresar un número&quot;);
	else
		fahrenheit.value=Round((9/5)*num+32, 2);
}

function FahrenheitToCelsius(fahrenheit, celsius)
{
	var num = fahrenheit.value;
	
	if (num == &quot;&quot; || !isNumber(Number(num)))
		alert(&quot;Por favor ingresar un número&quot;);
	else
		celsius.value=Round((5/9)*(num-32), 2);
}
&lt;/script&gt;

&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;Celsius:&lt;/td&gt;
&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;celsius_field&quot; id=&quot;celsius_field&quot; style=&quot;width:100px&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;input type=&quot;button&quot; value=&quot;A Fahrenheit&quot; onclick=&quot;CelsiusToFahrenheit($('celsius_field'), $('fahrenheit_field'))&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fahrenheit:&lt;/td&gt;
&lt;td&gt;&lt;input type=&quot;text&quot; name=&quot;fahrenheit_field&quot; id=&quot;fahrenheit_field&quot; style=&quot;width:100px&quot; /&gt;&lt;/td&gt;
&lt;td&gt;&lt;input type=&quot;button&quot; value=&quot;A Celsius&quot; onclick=&quot;FahrenheitToCelsius($('fahrenheit_field'), $('celsius_field'))&quot; /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
</pre>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertir fahrenheit a centigrados online">convertir fahrenheit a centigrados online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertir fahrenheit a celsius">convertir fahrenheit a celsius</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertidor de farenheit a centigrados online">convertidor de farenheit a centigrados online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertir celsius a fahrenheit online">convertir celsius a fahrenheit online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convert celsius to fahrenheit">convert celsius to fahrenheit</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertir celsius a farenheit online">convertir celsius a farenheit online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="centigrados a farenheit online">centigrados a farenheit online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertidor de temperaturas online">convertidor de temperaturas online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="convertidor de temperatura online">convertidor de temperatura online</a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/" title="pasar de farenheit a celsius online">pasar de farenheit a celsius online</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/celsius-to-fahrenheit/" rel="bookmark" title="Celsius a Fahrenheit">Celsius a Fahrenheit </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/intelligent-escaper-unescaper-online-unescape-and-escape-tool-with-url-parameter-parsing-and-more/" rel="bookmark" title="Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más)">Intelligent Escaper-Unescaper &#8211; Herramienta Online para hacer Unescape y Escape (con procesamiento de parámetros de URLs y más) </a></li>
<li><a href="http://www.neoegm.com/es/tech/online-tools/random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias">Generador de contraseñas aleatorias </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/online-tools/convert-celsius-to-fahrenheit-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mover el Recuadro de Eventos de Facebook hacia Arriba</title>
		<link>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/</link>
		<comments>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 00:00:11 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Add-on]]></category>
		<category><![CDATA[Birthday]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[Customize]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[Friend]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GreaseMonkey]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Top]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=869</guid>
		<description><![CDATA[Facebook tiene algunas funcionalidades muy interesantes&#8230; Una de ellas es la posibilidad de tener un recordatorio de los cumpleaños de tus amigos y de los eventos a los que te suscribiste&#8230; Pero (siempre hay un pero 8-))&#8230; No están en un lugar muy cómodo&#8230; Así que&#8230; Decidí hacer un script para moverlos a arriba de [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba &#8211; Versión de Diagnóstico">Mover el Recuadro de Eventos de Facebook hacia Arriba &#8211; Versión de Diagnóstico </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Facebook tiene algunas funcionalidades muy interesantes&#8230; Una de ellas es la posibilidad de tener un recordatorio de los cumpleaños de tus amigos y de los eventos a los que te suscribiste&#8230;</p>
<p>Pero (siempre hay un pero 8-))&#8230; No están en un lugar muy cómodo&#8230;</p>
<p>Así que&#8230; Decidí hacer un script para moverlos a arriba de todo <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop.png" alt="FacebookEventsToTop" title="FacebookEventsToTop" width="425" height="441" class="aligncenter size-full wp-image-874" /></p>
<p><span id="more-869"></span></p>
<p><a href="http://www.firefox.com/"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Firefox_small.png" alt="Firefox_small" title="Firefox_small" width="69" height="69" class="alignleft size-full wp-image-880" /></a> Este script requiere <a href="http://www.firefox.com/">Firefox</a> y la extensión <a href="https://addons.mozilla.org/firefox/addon/748">GreaseMonkey</a> (Realmente recomiendo instalarla ya que te da la posibilidad de ejecutar este tipo de &#8220;script personalizadores de sitios&#8221;)&#8230;<br />
Antes que nada, asumiendo que tenés Firefox instalado, hay que instalar la extensión GreaseMonkey (hacer click en &#8220;Agregar a Firefox&#8221; en el siguiente link):</p>
<div align="center">
<p class="download"><a href="https://addons.mozilla.org/firefox/addon/748">Extensión GreaseMonkey para Firefox</a></p>
</div>
<p>Luego, una vez que ya esté instalada y ejecutándose (hay que reiniciar Firefox cuando nos lo pide), en la barra de estado va a haber una cara de un mono en colores (si está en gris, tenés que habilitar el motor haciéndole click):</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/GreaseMonkey_On.png" alt="GreaseMonkey_On" title="GreaseMonkey_On" width="227" height="22" class="aligncenter size-full wp-image-882" /></p>
<p>Después de eso, ya estás finalmente preparado para instalar el script&#8230;<br />
<a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Como de costumbre, Facebook Events To Top está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span><br />
Hay dos versiones del script&#8230; Una para las versiones 3.5 y posteriores de Firefox y una para las previas a ella&#8230; Realmente recomiendo utilizar la versión más nueva siempre que sea posible ya que es mucho más eficiente (incluso recomiendo instalar la última versión estable de <a href="http://www.firefox.com/">Firefox</a> si se puede)&#8230;</p>
<p>Simplemente hay que hacer click en el link de la versión correspondiente del script y (si GreaseMonkey está correctamente instalado y corriendo), un mensaje de instalación aparecerá solicitándo confirmación&#8230; Allí presionamos &#8220;Instalar&#8221; luego de que expira el tiempo de seguridad y listo&#8230;<br />
<strong>ACTUALIZACIÓN (2009-08-19):</strong> Liberé la versión 1.1 para solucionar el problema que hacía que el cuadro de eventos no subiera algunas veces al cargar la página (o refrescar). <strong><em>[Actualización recomendada]</em></strong></p>
<p><strong>ACTUALIZACIÓN (2009-09-15):</strong> Liberé la versión 1.2 para solucionar el problema que hacía que el script no funcionara en algunas cuentas debido a cambios en la estructura del sitio de Facebook. <strong><em>[Actualización recomendada]</em></strong></p>
<p><strong>ACTUALIZACION (2009-09-16):</strong> Version 1.2.1 liberada para solucionar un problema pendiente que hacía que el script no funcionara en algunas situaciones con la nueva estructura del sitio (especificamente al volver a la página de Inicio sin refrescar luego de hacer algunas acciones puntuales, por ejemplo, al hacer click en el link &#8220;Volver al Inicio&#8221; luego de limpiar las solicitudes pendientes). <strong><em>[Actualización recomendada]</em></strong></p>
<p><strong>ACTUALIZACION (2009-10-12):</strong> Acabo de agregar <a href="#diagnostics">más abajo</a> las <em>versiones de diagnóstico</em> en caso de que a alguien no le funcione el script.</p>
<p><strong>ACTUALIZACIÓN (2010-02-16):</strong> Liberé la versión 1.3 para solucionar el problema que hacía que el script no funcionara debido a cambios en la estructura del sitio de Facebook. <strong><em>[Actualización recomendada]</em></strong></p>
<p>Y ahora, finalmente, los links&#8230;</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/facebook-events-to-top/facebook-events-to-top-1.3.user.js">Facebook Events To Top 1.3 (FF 3.5+)</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/facebook-events-to-top/facebook-events-to-top-1.3-old.user.js">Facebook Events To Top 1.3 (FF &lt;3.5) </a></p>
</div>
<p>Una vez instalado, va a activarse al navegar cualquier página de Facebook y va a hacer que el recuadro de Eventos aparezca arriba de todo tal como esperamos&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop_GM.png" alt="FacebookEventsToTop_GM" title="FacebookEventsToTop_GM" width="282" height="156" class="aligncenter size-full wp-image-878" /></p>
<p>Esta opción en el menú sólo aparece al navegar una página <strong>de Facebook</strong>, de lo contrario, el script permanece inactivo.</p>
<p>Que lo disfrutes! <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
<a name="diagnostics"></a></p>
<h4>Versión de diagnóstico (sólo en caso de tener problemas)</h4>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/FacebookEventsToTop_Diagnostics.png" alt="FacebookEventsToTop_Diagnostics" title="FacebookEventsToTop_Diagnostics" width="383" height="198" class="aligncenter size-full wp-image-1582" /></p>
<p>Si estás teniendo algún problema con este script, descargate la <em>versión de diagnóstico</em> correspondiente de más abajo y enviame, a través del <a href="/es/contact/">formulario de contacto</a>, el texto que aparece arriba de todo luego de iniciar sesión en Facebook y de acceder a <a href="http://www.facebook.com/home.php">http://www.facebook.com/home.php</a>.</p>
<p>Si es posible, enviame también cualquier error relacionado que aparezca en la sección de &#8220;Errores&#8221; de la &#8220;Consola de Errores&#8221; de Firefox (localizada en el menú Herramientas, opción &#8220;Consola de Errores&#8221;). Deberías abrirla, presionar &#8220;Limpiar&#8221; para limpiar todos los errores y clickear la opción &#8220;Errores&#8221; para que no aparezcan ni Advertencias ni Mensajes. Luego de eso, deberías abrir la dirección de Facebook que escribí arriba.</p>
<p><strong>Nota:</strong> es importante asegurarse que ningún otro script de GreaseMonkey esté interfiriendo con este script. Así que antes de hacer cualquier reporte de inconvenientes, intentá deshabilitar cualquier otro script de GreaseMonkey que estés utilizando. Podés hacer esto, apretando botón derecho sobre el ícono de GreaseMonkey de la barra de estado, yendo a &#8220;Manage User Scripts&#8221;, y luego destildando la opción &#8220;Enabled&#8221; correspondiente a cada uno de los otros scripts en uso. El único que debería quedar habilitado es el &#8220;Facebook-Events-To-Top&#8221;. Luego de eso, se debe apretar OK y refrescar la página de Facebook.</p>
<p>Después de haber hecho todas las pruebas, podés re-habilitar los otros scripts.</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/facebook-events-to-top/facebook-events-to-top-1.3-diag.user.js">Versión de Diagnóstico 1.3 (FF 3.5+)</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/facebook-events-to-top/facebook-events-to-top-1.3-old-diag.user.js">Versión de Diagnóstico 1.3 (FF &lt;3.5)</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="mover solicitudes hasta arriba facebook">mover solicitudes hasta arriba facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="neo script for facebook">neo script for facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="cuadro eventos facebook">cuadro eventos facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="que es el recuadro">que es el recuadro</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="move eggesin gigi event facebook">move eggesin gigi event facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="www facebook de/move events">www facebook de/move events</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="how to make facebook event move to top">how to make facebook event move to top</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="mover el icono del tiempo firefox">mover el icono del tiempo firefox</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="mover cuadro de informcacion de contacto en facebook">mover cuadro de informcacion de contacto en facebook</a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/" title="Moved facebook">Moved facebook</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-diagnostics-version/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba &#8211; Versión de Diagnóstico">Mover el Recuadro de Eventos de Facebook hacia Arriba &#8211; Versión de Diagnóstico </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-2/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.2 </a></li>
<li><a href="http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top-updated-to-version-1-3/" rel="bookmark" title="Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3">Mover el Recuadro de Eventos de Facebook hacia Arriba actualizado a la versión 1.3 </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/firefox/scripts/move-facebook-events-box-to-top/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Office Document Property Resetter (Reseteador de propiedades de archivos de Office)</title>
		<link>http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/</link>
		<comments>http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 18:37:19 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Cleanup]]></category>
		<category><![CDATA[Document]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[MS Excel]]></category>
		<category><![CDATA[MS Office]]></category>
		<category><![CDATA[MS Word]]></category>
		<category><![CDATA[OLE]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Property]]></category>
		<category><![CDATA[Reset]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=781</guid>
		<description><![CDATA[Este es un programa que hice hace dos años para solucionar un problema que tenía un amigo mío. Él tenía en su trabajo un grupo de archivos de Word y Excel creados en diferentes computadoras y quería limpiar sus propiedades para que no mostraran el Autor/Tïtulo/Tema/etc. que estaban configurados&#8230; Este habría sido un problema simple [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/excel-add-ins/excel-random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias para Excel">Generador de contraseñas aleatorias para Excel </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/wx-control-de-asistencia/" rel="bookmark" title="Control de Asistencia (Versión wxWidgets)">Control de Asistencia (Versión wxWidgets) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/celsius-to-fahrenheit/" rel="bookmark" title="Celsius a Fahrenheit">Celsius a Fahrenheit </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Este es un programa que hice hace dos años para solucionar un problema que tenía <a href="http://www.fepe55.com.ar/blog/">un amigo mío</a>. Él tenía en su trabajo un grupo de archivos de Word y Excel creados en diferentes computadoras y quería limpiar sus propiedades para que no mostraran el Autor/Tïtulo/Tema/etc. que estaban configurados&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_DOC_Prop_1.png" rel="lightbox[781]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_DOC_Prop_1-218x300.png" alt="Office_Document_Property_Resetter_DOC_Prop_1" title="Office_Document_Property_Resetter_DOC_Prop_1" width="218" height="300" class="aligncenter size-medium wp-image-784" /></a></p>
<p>Este habría sido un problema simple de resolver si hubieran sido unos pocos archivos&#8230; Podrían haberse limpiado manualmente&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Word_Menu.png" rel="lightbox[781]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Word_Menu-286x300.png" alt="Office_Document_Property_Resetter_Word_Menu" title="Office_Document_Property_Resetter_Word_Menu" width="286" height="300" class="aligncenter size-medium wp-image-795" /></a></p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Word_Prop_1.png" rel="lightbox[781]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Word_Prop_1-300x240.png" alt="Office_Document_Property_Resetter_Word_Prop_1" title="Office_Document_Property_Resetter_Word_Prop_1" width="300" height="240" class="aligncenter size-medium wp-image-796" /></a></p>
<p>Pero había muchísimos!</p>
<p>Así que&#8230; Hice este programa <img src="http://www.neoegm.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Main.png" alt="Office_Document_Property_Resetter_Main" title="Office_Document_Property_Resetter_Main" width="459" height="196" class="aligncenter size-full wp-image-793" /></p>
<p><span id="more-781"></span></p>
<p>Es muy fácil de usar&#8230; Simplemente tenés que elegir la carpeta en la que están localizados los archivos (busca en subdirectorios también) y presionar Start&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Start.png" alt="Office_Document_Property_Resetter_Start" title="Office_Document_Property_Resetter_Start" width="458" height="194" class="aligncenter size-full wp-image-794" /></p>
<p>No se puede cancelar mientras está trabajando&#8230; Así que, si son muchos archivos, el proceso podría tomar un tiempo considerable&#8230; Recomiendo ejecutarlo en un momento en el que se pueda dejar de utilizar la computadora&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Working.png" alt="Office_Document_Property_Resetter_Working" title="Office_Document_Property_Resetter_Working" width="459" height="195" class="aligncenter size-full wp-image-798" /></p>
<p>Una vez que terminó, se puede ver un resumen de lo realizado&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Finish.png" alt="Office_Document_Property_Resetter_Finish" title="Office_Document_Property_Resetter_Finish" width="459" height="194" class="aligncenter size-full wp-image-791" /></p>
<p>En este caso fueron sólo dos archivos&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_Folder.png" alt="Office_Document_Property_Resetter_Folder" title="Office_Document_Property_Resetter_Folder" width="481" height="436" class="aligncenter size-full wp-image-792" /></p>
<p>Y eso es todo&#8230; Las propiedades van a estar limpias&#8230;</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_DOC_Prop_1b.png" rel="lightbox[781]"><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_DOC_Prop_1b-219x300.png" alt="Office_Document_Property_Resetter_DOC_Prop_1b" title="Office_Document_Property_Resetter_DOC_Prop_1b" width="219" height="300" class="aligncenter size-medium wp-image-785" /></a></p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">Office Document Property Resetter está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/08/Office_Document_Property_Resetter_About.png" alt="Office_Document_Property_Resetter_About" title="Office_Document_Property_Resetter_About" width="457" height="377" class="aligncenter size-full wp-image-783" /></p>
<p>Ha sido probado con <strong>Office 2003</strong> y <strong>Office 2007</strong>&#8230;</p>
<p>Ahora, finalmente, los links de descarga&#8230;</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/office-document-property-resetter/Office_Document_Property_Resetter_1.0.zip">Office Document Property Resetter v1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/office-document-property-resetter/Office_Document_Property_Resetter_1.0_Source.zip">Descargar Código Fuente v1.0</a></p>
</div>
<p>Para recompilar a partir del código fuente, vas a tener que copiar los siguientes archivos a la carpeta &#8220;<em>Office Document Property Resetter\Office 2003</em>&#8220;:</p>
<ul>
<li>C:\Program Files\Common Files\Microsoft Shared\Office11\MSO.DLL</li>
<li>C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB</li>
<li>C:\Program Files\Microsoft Office\Office11\MSWord.olb</li>
<li>C:\Program Files\Microsoft Office\Office11\excel.exe</li>
</ul>
<p>Esas rutas son de una instalación de Office 2003&#8230; Recomiendo usar esos archivos en vez de los de una instalación de Office 2007 (o posterior) ya que estos últimos harían el programa inutilizable en computadoras que tengan una versión anterior&#8230;</p>
<p><strong>Nota:</strong> Las rutas provienen de una instalación de Windows en inglés, así que pueden no ser completamente válidas en el caso de tener instalado el sistema operativo en otro idioma. En el caso de no encontrarlas, se puede buscar los archivos por su nombre para hallarlos.</p>
<p>En vez de copiar los archivos, podrías también localizar la siguiente sección de código en el archivo &#8220;<em>Office Document Property ResetterDlg.h</em>&#8220;:</p>
<pre class="brush: cpp; collapse: true; first-line: 36; light: false; title: ; toolbar: true; notranslate">
//#import &quot;C:\Program Files\Common Files\Microsoft Shared\Office11\MSO.DLL&quot;
#import &quot;Office 2003\MSO.DLL&quot; \
	no_namespace \
	rename(&quot;SearchPath&quot;, &quot;SearchPathMSO&quot;) \
	rename(&quot;RGB&quot;, &quot;RGBMSO&quot;)

//#import &quot;C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB&quot;
#import &quot;Office 2003\VBE6EXT.OLB&quot; \
	no_namespace

//#import &quot;C:\Program Files\Microsoft Office\Office11\MSWord.olb&quot;
#import &quot;Office 2003\MSWord.olb&quot; \
	rename(&quot;FindText&quot;,&quot;FindTextWord&quot;)  \
	rename(&quot;ReplaceText&quot;,&quot;ReplaceTextWord&quot;)  \
	rename(&quot;ExitWindows&quot;,&quot;ExitWindowsWord&quot;)  \
	rename(&quot;RGB&quot;,&quot;RGBWord&quot;)  \
	no_dual_interfaces

//#import &quot;C:\Program Files\Microsoft Office\Office11\excel.exe&quot;
#import &quot;Office 2003\excel.exe&quot; \
	exclude(&quot;IFont&quot;)	\
	exclude(&quot;IPicture&quot;)	\
	rename(&quot;ReplaceText&quot;,&quot;ReplaceTextXLS&quot;)  \
	rename(&quot;RGB&quot;,&quot;RGBXLS&quot;)  \
	rename(&quot;DialogBox&quot;,&quot;DialogBoxXLS&quot;)  \
	rename(&quot;CopyFile&quot;,&quot;CopyFileXLS&quot;)  \
	no_dual_interfaces
</pre>
<p>Y reemplazarla con (notar el agregado de la barra invertida al final de las líneas de <em>#import</em>):</p>
<pre class="brush: cpp; collapse: true; first-line: 36; light: false; title: ; toolbar: true; notranslate">
#import &quot;C:\Program Files\Common Files\Microsoft Shared\Office11\MSO.DLL&quot; \
	no_namespace \
	rename(&quot;SearchPath&quot;, &quot;SearchPathMSO&quot;) \
	rename(&quot;RGB&quot;, &quot;RGBMSO&quot;)

#import &quot;C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB&quot; \
	no_namespace

#import &quot;C:\Program Files\Microsoft Office\Office11\MSWord.olb&quot; \
	rename(&quot;FindText&quot;,&quot;FindTextWord&quot;)  \
	rename(&quot;ReplaceText&quot;,&quot;ReplaceTextWord&quot;)  \
	rename(&quot;ExitWindows&quot;,&quot;ExitWindowsWord&quot;)  \
	rename(&quot;RGB&quot;,&quot;RGBWord&quot;)  \
	no_dual_interfaces

#import &quot;C:\Program Files\Microsoft Office\Office11\excel.exe&quot; \
	exclude(&quot;IFont&quot;)	\
	exclude(&quot;IPicture&quot;)	\
	rename(&quot;ReplaceText&quot;,&quot;ReplaceTextXLS&quot;)  \
	rename(&quot;RGB&quot;,&quot;RGBXLS&quot;)  \
	rename(&quot;DialogBox&quot;,&quot;DialogBoxXLS&quot;)  \
	rename(&quot;CopyFile&quot;,&quot;CopyFileXLS&quot;)  \
	no_dual_interfaces
</pre>
<p>Eso va a hacer que el compilador busque los archivos en su ubicación real&#8230; (No olvidar actualizar las rutas en el caso de que se tenga instalado el Office en una localización diferente)</p>
<p>Eso es todo&#8230; Que lo disfrutes!<br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="document property">document property</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="VBE6EXT OLB">VBE6EXT OLB</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="mensajes de texto">mensajes de texto</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="propiedades de office">propiedades de office</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="descargar msword olb">descargar msword olb</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="descargar archivo VBE6EXT OLB">descargar archivo VBE6EXT OLB</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="vb6ext olb download">vb6ext olb download</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="descargar vb6ext olb">descargar vb6ext olb</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="VB6EXT OLB">VB6EXT OLB</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" title="document">document</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/excel-add-ins/excel-random-password-generator/" rel="bookmark" title="Generador de contraseñas aleatorias para Excel">Generador de contraseñas aleatorias para Excel </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/wx-control-de-asistencia/" rel="bookmark" title="Control de Asistencia (Versión wxWidgets)">Control de Asistencia (Versión wxWidgets) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/celsius-to-fahrenheit/" rel="bookmark" title="Celsius a Fahrenheit">Celsius a Fahrenheit </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clase String simple para C++</title>
		<link>http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/</link>
		<comments>http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/#comments</comments>
		<pubDate>Sun, 09 Aug 2009 14:12:15 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Exercise]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Include]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Portable]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[Strings]]></category>
		<category><![CDATA[Teaching]]></category>
		<category><![CDATA[wxDev]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=764</guid>
		<description><![CDATA[Todo programador de C++ sabe que la librería standard tiene una clase string. Pero, mientras se está aprendiendo, es una buena idea saber cómo poder desarrollar tu propia clase string. Esa es la razón por la que hice la clase String. No está pensada para proyectos profesionales (para ellos, deberías utilizar la string de la [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" rel="bookmark" title="Clase Lista simple para C++">Clase Lista simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/control-de-asistencia/" rel="bookmark" title="Control de Asistencia">Control de Asistencia </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" rel="bookmark" title="cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++">cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++ </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Todo programador de C++ sabe que la librería standard tiene una clase <em>string</em>. Pero, mientras se está aprendiendo, es una buena idea saber cómo poder desarrollar tu propia clase <em>string</em>.</p>
<p>Esa es la razón por la que hice la clase <em>String</em>. No está pensada para proyectos profesionales (para ellos, deberías utilizar la <em>string</em> de la librería standard), sino como una ayuda para aprender C++.</p>
<pre class="brush: cpp; title: ; notranslate">
class String
{
	char *m_pszString;	//Allocated buffer
	int m_nAllocated;	//Allocated length

public:
	//Construction and destruction
	String() { /* ... */ }
	~String() { /* ... */ }

	//Copy constructors
	String(const char *pszString) { /* ... */ }
	String(const String&amp; rsString) { /* ... */ }

	//Operators (assignment)
	String&amp; operator=(const char *pszString);
	String&amp; operator=(const String&amp; rsString) { /* ... */ }

	//Operators (concatenation)
	String&amp; operator+=(const char *pszString);
	String&amp; operator+=(String&amp; rsString) { /* ... */ }
	String operator+(String rsString);

	//Operators (comparison)
	bool operator&lt;(String sString) { /* ... */ }
	bool operator&lt;=(String sString) { /* ... */ }

	bool operator&gt;(String sString) { /* ... */ }
	bool operator&gt;=(String sString) { /* ... */ }

	bool operator==(String sString) { /* ... */ }
	bool operator!=(String sString) { /* ... */ }

	//Operations
	void Clear();
	String Lower() { /* ... */ }
	String Upper() { /* ... */ }

	//Information
	int Length() { /* ... */ }

	//Cast operators
	operator const char*() { /* ... */ }

protected:	//Helper functions
	/* ... */
};

//Output e input
std::ostream&amp; operator&lt;&lt;(std::ostream&amp; oStream, String&amp; rsString);
std::istream&amp; operator&gt;&gt;(std::istream&amp; iStream, String&amp; rsString);
</pre>
<p><span id="more-764"></span></p>
<p>Este es un proyecto de ejemplo hecho para explicar la utilización de la clase <em>String</em>.</p>
<pre class="brush: cpp; title: ; notranslate">
#include &lt;iostream&gt;
	using std::cout;
	using std::cin;
	using std::endl;
#include &quot;String.h&quot;

using namespace std;

int main(int argc, char *argv[])
{
	cout &lt;&lt; &quot;String sample project&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;---------------------&quot; &lt;&lt; endl &lt;&lt; endl;

	String a(&quot;This&quot;), b(&quot;is&quot;), c(&quot;a&quot;), d(&quot;test&quot;);
	String e = a + &quot; &quot; + b + &quot; &quot; + c + &quot; &quot; + d;

	cout &lt;&lt; &quot;String parts:&quot; &lt;&lt; endl;
	cout &lt;&lt; '\t' &lt;&lt; a &lt;&lt; endl;
	cout &lt;&lt; '\t' &lt;&lt; b &lt;&lt; endl;
	cout &lt;&lt; '\t' &lt;&lt; c &lt;&lt; endl;
	cout &lt;&lt; '\t' &lt;&lt; d &lt;&lt; endl &lt;&lt; endl;

	cout &lt;&lt; &quot;Concatenated with spaces:&quot; &lt;&lt; endl;
	cout &lt;&lt; '\t' &lt;&lt; e &lt;&lt; endl &lt;&lt; endl;

	String f, g;

	cout &lt;&lt; &quot;Please input a string (empty to break): &quot;;
	cin &gt;&gt; f;
	cout &lt;&lt; &quot;Please input other string (empty to break): &quot;;
	cin &gt;&gt; g;

	cout &lt;&lt; endl;

	cout &lt;&lt; &quot;1st string (&quot; &lt;&lt; f &lt;&lt; &quot;) is &quot; &lt;&lt; f.Length() &lt;&lt; &quot; chars long.&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;2nd string (&quot; &lt;&lt; g &lt;&lt; &quot;) is &quot; &lt;&lt; g.Length() &lt;&lt; &quot; chars long.&quot; &lt;&lt; endl;

	cout &lt;&lt; endl;

	cout &lt;&lt; &quot;1st string in lowercase is &quot; &lt;&lt; f.Lower() &lt;&lt; endl;
	cout &lt;&lt; &quot;1st string in uppercase is &quot; &lt;&lt; f.Upper() &lt;&lt; endl &lt;&lt; endl;

	cout &lt;&lt; &quot;2nd string in lowercase is &quot; &lt;&lt; g.Lower() &lt;&lt; endl;
	cout &lt;&lt; &quot;2nd string in uppercase is &quot; &lt;&lt; g.Upper() &lt;&lt; endl &lt;&lt; endl;

	cout &lt;&lt; &quot;1 &lt; 2\t=&gt; &quot; &lt;&lt; (f&lt;g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl;
	cout &lt;&lt; &quot;1 &lt;= 2\t=&gt; &quot; &lt;&lt; (f&lt;=g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl;
	cout &lt;&lt; &quot;1 &gt; 2\t=&gt; &quot; &lt;&lt; (f&gt;g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl;
	cout &lt;&lt; &quot;1 &gt;= 2\t=&gt; &quot; &lt;&lt; (f&gt;=g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl;
	cout &lt;&lt; &quot;1 == 2\t=&gt; &quot; &lt;&lt; (f==g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl;
	cout &lt;&lt; &quot;1 != 2\t=&gt; &quot; &lt;&lt; (f!=g?&quot;true&quot;:&quot;false&quot;) &lt;&lt; endl &lt;&lt; endl;

	if (f == g)
		cout &lt;&lt; &quot;Strings are equal.&quot; &lt;&lt; endl;
	else
		cout &lt;&lt; &quot;Strings are not equal.&quot; &lt;&lt; endl;

	cout &lt;&lt; endl;

	cout &lt;&lt; &quot;1+2\t=&gt; &quot; &lt;&lt; f+g &lt;&lt; endl;
	cout &lt;&lt; &quot;2+1\t=&gt; &quot; &lt;&lt; g+f &lt;&lt; endl;

	cout &lt;&lt; endl;

    return 0;
}
</pre>
<p>Y esta su salida:</p>

<pre class="console">
String sample project
---------------------

String parts:
        This
        is
        a
        test

Concatenated with spaces:
        This is a test

Please input a string (empty to break): Hello, string 1
Please input other string (empty to break): Phrase 2

1st string (Hello, string 1) is 15 chars long.
2nd string (Phrase 2) is 8 chars long.

1st string in lowercase is hello, string 1
1st string in uppercase is HELLO, STRING 1

2nd string in lowercase is phrase 2
2nd string in uppercase is PHRASE 2

1 < 2   => false
1 <= 2  => false
1 > 2   => true
1 >= 2  => true
1 == 2  => false
1 != 2  => true

Strings are not equal.

1+2     => Hello, string 1Phrase 2
2+1     => Phrase 2Hello, string 1

</pre>
<p>El código es completamente portable.</p>
<p>Ha sido desarrollado, compilado y testeado utilizando <a href="http://wxdsgn.sourceforge.net/">wxDev-C++</a> para Windows con el <a href="http://www.mingw.org/">compilador MinGW</a> (incluído en el paquete). En Linux, fue compilado utilizando el compilador GNU GCC.</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">String está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p>Ahora los links de descarga:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/string-class/String_1.0.zip">Descargar Clase String 1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/string-class/String_Sample_Project_1.0.zip">Descargar Proyecto de Ejemplo 1.0</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="open source c string class">open source c string class</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="clase string c">clase string c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="C String Class Source Code">C String Class Source Code</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="string c español">string c español</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="simple string class c">simple string class c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="simple string class">simple string class</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="mail istream al loc:ES">mail istream al loc:ES</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="string c">string c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="simple c string class">simple c string class</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" title="c string class source">c string class source</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" rel="bookmark" title="Clase Lista simple para C++">Clase Lista simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/control-de-asistencia/" rel="bookmark" title="Control de Asistencia">Control de Asistencia </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" rel="bookmark" title="cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++">cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++ </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cppMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C++</title>
		<link>http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/</link>
		<comments>http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/#comments</comments>
		<pubDate>Sat, 08 Aug 2009 11:51:13 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Easy]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[Include]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Memory Leaks]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=727</guid>
		<description><![CDATA[Esta librería es la secuela para C++ de cMemDbg. Tal como cMemDbg, es una librería muy fácil de usar que sirve para ayudar a detectar y trazar fugas de memoria (memory leaks). Su utilización es muy similar a la cMemDbg, pero con soporte para los operadores de C++ (new, new[], delete and delete[]). Hay muchas [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cmemdbg-easy-to-use-c-memory-leak-detection-library/" rel="bookmark" title="cMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C">cMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" rel="bookmark" title="Clase Lista simple para C++">Clase Lista simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>Esta librería es la secuela para C++ de <a href="http://www.neoegm.com/tech/programming/c-cpp/cmemdbg-easy-to-use-c-memory-leak-detection-library/">cMemDbg</a>.</p>
<p>Tal como cMemDbg, es una librería muy fácil de usar que sirve para ayudar a detectar y trazar fugas de memoria (memory leaks).</p>
<p>Su utilización es muy similar a la cMemDbg, pero con soporte para los operadores de C++ (new, new[], delete and delete[]).</p>
<p>Hay muchas soluciones para esto en la red, pero esta tiene la particularidad de ser realmente simple de implementar.</p>

<pre class="console">>new  003D26D8  36  [Main.cpp:127]
>new  003D2708  36  [Main.cpp:128]
>ERROR  Bad free type  free => delete  003D2708  36
(Main.cpp:128)
>free  003D2708  36  (Main.cpp:128)  [Main.cpp:129]
>free  003D2708  0    [Main.cpp:130]
>ERROR  Trying to free unallocated memory: 003D2708
[Main.cpp:130]
>delete[]  003D3EB0  7  (String.cpp:59)  [String.h:41]
[...]
>delete[]  003D24F0  4  (String.cpp:59)  [String.h:41]
>delete  003D2490  40  (Lista.h:120)  [Lista.h:112]
>INFO  PROBLEM: Memory leak found (36 bytes)
>INFO  Unfreed block  003D26D8  36    [Main.cpp:127]
</pre>
<p><span id="more-727"></span>Simplemente hay que agregar el siguiente include al archivo principal de inclusión (un archivo que sea incluido por cada archivo del proyecto) o, en el caso de que no haya uno, a cada archivo que llame a una función de alocación de memoria (malloc, realloc, calloc, free, new, new[], delete or delete[]).</p>
<p>Esta es la línea:</p>
<pre class="brush: cpp; light: true; title: ; notranslate">#include &quot;cMemDbg.h&quot;</pre>
<p>Hay dos precauciones extra a tener en cuenta:<br />
1- Incluirlo <strong>después</strong> de los headers standard (stdio.h, stdlib.h, malloc.h, etc.).<br />
2- Nunca llamar al aperador delete (o delete[]) sin saber si su argumento es NULL. Así que &#8220;delete a;&#8221; debería pasar a ser &#8220;if (a) delete a;&#8221;. De otro modo, la librería puede mostrar mensajes incorrectos.</p>
<p>Eso es todo&#8230; Esperabas más? Bueno, hay un último paso&#8230; Tenés que hacer esta llamada justo antes de salir del programa para poder obtener las conclusiones detalladas:</p>
<pre class="brush: cpp; light: true; title: ; notranslate">PrintMemoryLeakInfo();</pre>
<p>Por defecto, la salida de la librería irá a stdout (normalmente la pantalla de la consola). Si querés redirigira a un archivo, podés llamar a la función InitCPPMemDbg(). Este es su prototipo:</p>
<pre class="brush: cpp; light: true; title: ; notranslate">void InitCPPMemDbg(const char *pszOutputPath = NULL);</pre>
<p>Otra opción, para simplificar, es crear un objeto global del tipo &#8220;cppMemDbg&#8221; al comienzo de las declaraciones globales. Podés pasarle una ruta de archivo al constructor para redirigir la salida. Este objeto se va a encargar de llamar automáticamente a InitCPPMemDbg  (para configurar la redirección) al construirse y a PrintMemoryLeakInfo al destruirse.</p>
<p>Así de simple:</p>
<pre class="brush: cpp; light: true; title: ; notranslate">cppMemDbg cDbg;</pre>
<p>O, con redirección:</p>
<pre class="brush: cpp; light: true; title: ; notranslate">cppMemDbg cDbg(&quot;mylocalfile.txt&quot;);</pre>
<p>Easy, not?</p>
<p>That was all&#8230; Really.</p>
<p>Fácil, no?</p>
<p>Eso fue todo&#8230; En serio.</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">cppMemDbg está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p>Ahora, antes de ir a funcionalidades más &#8220;de experto&#8221;, voy a dejar el link para descargar la librería para aquellos que no quieran seguir leyendo:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/cppmemdbg/cppMemDbg_1.0.zip">Download</a></p>
</div>
<p>Ahora continuemos&#8230;</p>
<p>Esta librería viene con tres parámetros configurables (disponibles en cppMemDbg.cpp):</p>
<ul>
<li><strong>PRINT_OPERATIONS:</strong> Si está seteado en 1, se va a imprimir a la salida configurada (stdout por default) cada operación de alocación de memoria realizada en el programa (alocación o liberación). De otro modo, la librería sólo imprimirá problemas, notificaciones y el dump final. <em>[Valor predeterminado = 1]</em></li>
<li><strong>MAX_ALLOC:</strong> Largo del stack interno de memoria de la librería (en elementos). Es la máxima cantidad de alocaciones que pueden ser trazadas sin ser liberadas. Se puede incementar este valor a voluntad en casi de ser necesario. De hecho, si es necesario, la librería imprimirá un mensaje diciendo: &#8220;INTERNAL_ERROR: Allocation stack overflow, please increase MAX_ALLOC&#8221;. <em>[Valor predeterminado = 256]</em></li>
<li><strong>g_fFile:</strong> FILE* al cuál escribirle todas las notificaciones generadas por la librería. <em>[Valor predeterminado = stdout]</em></li>
<li><strong>MAX_DELETE_STACK:</strong> Largo del stack interno de <em>delete</em> de la librería (en elementos). Es la máxima cantidad de <em>delete</em>s que pueden anidarse. Se puede incementar este valor a voluntad en casi de ser necesario. De hecho, si es necesario, la librería imprimirá un mensaje diciendo: &#8220;INTERNAL_ERROR: Delete stack overflow, please increase MAX_DELETE_STACK&#8221;. <em>[Valor predeterminado = 16]</em></li>
</ul>
<p>Finalmente, hay dos funciones más que se pueden utilizar en caso de ser necesario:</p>
<ul>
<li><strong>PrintTotalAllocatedMemory():</strong> Imprime la cantidad acumulativa de memoria alocada al momento de la llamada.</li>
<li><strong>PrintMemoryReservedByCMemDbgLibrary():</strong> Imprime la cantidad de memoria reservada por la librería (definida en tiempo de compilación por la constante MAX_ALLOC).</li>
</ul>
<p>Eso es todo&#8230; Dije que era fácil de usar.</p>
<p>De todos modos si, luego de leer los comentarios del archivo cMemDbg.h, tenés algún tipo de pregunta, comentario o sugerencia, no dudes en contactarme.</p>
<p>Acá está el proyecto <a href="http://www.neoegm.com/es/tech/programming/c-cpp/control-de-asistencia/">Control de Asistencia</a> modificado para verificar la existencia de memory leaks y problemas de alocación/liberación de memoria con la librería cppMemDbg:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/cppmemdbg/ControlAsistencia_cppMemDbg.zip">Descargar proyecto de ejemplo</a></p>
</div>
<p>El código es portable entre Linux y Windows (lo testeé personalmente en ambas plataformas y funcionó idénticamente).</p>
<p>Ha sido desarrollado, compilado y testeado utilizando <a href="http://wxdsgn.sourceforge.net/">wxDev-C++</a> para Windows con el <a href="http://www.mingw.org/">compilador MinGW</a> (incluído en el paquete). En Linux, fue compilado utilizando el compilador GNU GCC.</p>
<p>Está configurado para enviar la salida al archivo &#8220;TestMemDbg.txt&#8221; del directorio actual. Esta es la parte importante del archivo Main.cpp:</p>
<pre class="brush: cpp; first-line: 101; highlight: [107,109]; title: ; notranslate">
//...

#include &quot;ControlDeAsistencia.h&quot;
#include &quot;BasicFunctions.h&quot;
#include &lt;fstream&gt;

#include &quot;cppMemDbg.h&quot;

cppMemDbg cDbg(&quot;TestMemDbg.txt&quot;);

//...
</pre>
<p>Y esta es su salida satisfactoria (la salida real está tabulada para hacer más simple su análisis utilizando un software de hoja de cálculos):</p>

<pre class="console">>new[]  003D3F58  14  [String.cpp:59]
>new[]  003D2438  14  [String.cpp:59]
>delete[]  003D3F58  14  (String.cpp:59)  [String.h:41]
>new[]  003D3EB0  7  [String.cpp:59]
>new[]  003D2450  7  [String.cpp:59]
[...]
>delete[]  003D2558  4  (String.cpp:59)  [String.h:41]
>delete[]  003D24F0  4  (String.cpp:59)  [String.h:41]
>delete  003D2490  40  (Lista.h:120)  [Lista.h:112]
>INFO  No memory leaks detected
</pre>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="cppMemDbg">cppMemDbg</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="mingw memory leak detection">mingw memory leak detection</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="memory leak detection mingw">memory leak detection mingw</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="mingw memory leak">mingw memory leak</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="c memory leak library">c memory leak library</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="c memory leak detector">c memory leak detector</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="memory leak mingw">memory leak mingw</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="c memory leak detection library">c memory leak detection library</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="memory leak detection c">memory leak detection c</a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/" title="libreria para delete en c">libreria para delete en c</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/cmemdbg-easy-to-use-c-memory-leak-detection-library/" rel="bookmark" title="cMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C">cMemDbg &#8211; Librería fácil de usar de detección de fugas de memoria para C </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-list-class/" rel="bookmark" title="Clase Lista simple para C++">Clase Lista simple para C++ </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/simple-string-class/" rel="bookmark" title="Clase String simple para C++">Clase String simple para C++ </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/programming/c-cpp/cppmemdbg-easy-to-use-cpp-memory-leak-detection-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SMS Scheduler (Programador de mensajes de texto)</title>
		<link>http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/</link>
		<comments>http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/#comments</comments>
		<pubDate>Sun, 02 Aug 2009 21:00:09 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Cellular]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Freeware]]></category>
		<category><![CDATA[GNU GPL]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[Message]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Pocket PC]]></category>
		<category><![CDATA[Schedule]]></category>
		<category><![CDATA[SMS]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=637</guid>
		<description><![CDATA[4 de la mañana&#8230; Te estás yendo a acostar tarde&#8230; De repente, te acordás de que tenías que enviarle a alguien un mensaje con información importante que debería tener a las 9 de la mañana&#8230; Obviamente no querés levantarte a las 9:00&#8230; Si le enviaras el mensaje en este momento, probablemente lo despertarías si no [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/tools/wake-on-lan/" rel="bookmark" title="Wake On LAN (Prender remotamente una computadora)">Wake On LAN (Prender remotamente una computadora) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/wx-control-de-asistencia/" rel="bookmark" title="Control de Asistencia (Versión wxWidgets)">Control de Asistencia (Versión wxWidgets) </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" rel="bookmark" title="Office Document Property Resetter (Reseteador de propiedades de archivos de Office)">Office Document Property Resetter (Reseteador de propiedades de archivos de Office) </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p>4 de la mañana&#8230; Te estás yendo a acostar tarde&#8230; De repente, te acordás de que tenías que enviarle a alguien un mensaje con información importante que debería tener a las 9 de la mañana&#8230;</p>
<p>Obviamente no querés levantarte a las 9:00&#8230; Si le enviaras el mensaje en este momento, probablemente lo despertarías si no tuviera apagado su celular (se lo merecería! :))&#8230;</p>
<p>Así que&#8230; ¿Qué podés hacer? Este programa es la respuesta&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/07/SMS_Scheduler_1.png" alt="SMS_Scheduler_1" title="SMS_Scheduler_1" width="317" height="399" class="aligncenter size-full wp-image-638" /></p>
<p><span id="more-637"></span></p>
<p>Podés simplemente llenar los datos del mensaje (Destinatario, Cuerpo y Horario Deseado) y presionar &#8220;Schedule&#8221; <em>[Programar]</em>&#8230; (Varios destinatarios se pueden ingresar separándolos con punto y coma)</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/07/SMS_Scheduler_2.png" alt="SMS_Scheduler_2" title="SMS_Scheduler_2" width="314" height="403" class="aligncenter size-full wp-image-639" /></p>
<p>Luego, podés simplemente irte a dormir y esperar que el mensaje se envía a la hora deseada&#8230;</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/07/SMS_Scheduler_5.png" alt="SMS_Scheduler_5" title="SMS_Scheduler_5" width="315" height="401" class="aligncenter size-full wp-image-642" /></p>
<p>Si te arrepentís, siempre podés destildar la casilla para cancelar el mensaje&#8230; (Si no fue ya enviado, lógicamente)</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/07/SMS_Scheduler_3.png" alt="SMS_Scheduler_3" title="SMS_Scheduler_3" width="313" height="404" class="aligncenter size-full wp-image-640" /></p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">SMS Scheduler está liberado bajo la licencia <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (adjunta)&#8230;</span></p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2009/07/SMS_Scheduler_4.png" alt="SMS_Scheduler_4" title="SMS_Scheduler_4" width="313" height="400" class="aligncenter size-full wp-image-641" /></p>
<p>El paquete de instalación está apuntado para Windows Mobile 5. No lo probé en otras versiones, pero, al menos recompilando, debería funcionar en otras&#8230;</p>
<p>Requiere el .NET Compact Framework 2.0 instalado en la Pocket PC&#8230; Si no lo tenés, podés simplemente descargar el <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=aea55f2f-07b5-4a8c-8a44-b4e1b196d5c0&#038;displaylang=en">.NET Compact Framework 2.0 Service Pack 2 Redistributable</a> e instalarlo con la Pocket PC conectada a la computadora y el ActiveSync corriendo (así puede copiarse e instalarse en el dispositivo)&#8230;</p>
<p>El instalador del SMS Scheduler también debe ser ejecutado con la Pocket PC conectada y el ActiveSync corriendo&#8230;</p>
<p>Bueno, eso es todo&#8230; Ahora, finalmente, los links&#8230;</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/sms-scheduler/SMS_Scheduler_1.0.zip">Descargar SMS Scheduler v1.0</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/sms-scheduler/SMS_Scheduler_1.0_Source.zip">Descargar Código Fuente (Full) v1.0</a></p>
</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="sms scheduler">sms scheduler</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="programar mensajes de texto">programar mensajes de texto</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="PROGRAMADOR DE MENSAJES">PROGRAMADOR DE MENSAJES</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="sms scheduler windows mobile">sms scheduler windows mobile</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="programar mensaje">programar mensaje</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="programar mensaje de texto">programar mensaje de texto</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="programar un mensaje">programar un mensaje</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="sms scheduler source code">sms scheduler source code</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="programador de mensajes de texto">programador de mensajes de texto</a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/" title="sms scheduler full">sms scheduler full</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="http://www.neoegm.com/es/tech/software/tools/wake-on-lan/" rel="bookmark" title="Wake On LAN (Prender remotamente una computadora)">Wake On LAN (Prender remotamente una computadora) </a></li>
<li><a href="http://www.neoegm.com/es/tech/programming/c-cpp/wxwidgets/wx-control-de-asistencia/" rel="bookmark" title="Control de Asistencia (Versión wxWidgets)">Control de Asistencia (Versión wxWidgets) </a></li>
<li><a href="http://www.neoegm.com/es/tech/software/tools/office-document-property-resetter/" rel="bookmark" title="Office Document Property Resetter (Reseteador de propiedades de archivos de Office)">Office Document Property Resetter (Reseteador de propiedades de archivos de Office) </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.neoegm.com/es/tech/software/tools/windows-mobile/sms-scheduler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
