<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3" -->
<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/"
	>

<channel>
	<title>lopezatienza.es</title>
	<link>http://www.lopezatienza.es</link>
	<description>Programación en VB.NET, C#.NET..</description>
	<pubDate>Wed, 14 Jul 2010 18:04:52 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3</generator>
	<language>en</language>
			<item>
		<title>SQL Server - Funciones</title>
		<link>http://www.lopezatienza.es/sql-server/sql-server-funciones/</link>
		<comments>http://www.lopezatienza.es/sql-server/sql-server-funciones/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 18:04:52 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/sql-server/sql-server-funciones/</guid>
		<description><![CDATA[Funciones numéricas
&#160;

ABS Returns the absolute value of the expression.
ACOS Returns the angle in radians for the given cosine.
ASIN Returns the angle in radians for the given sine.
ATAN Returns the angle in radians for the given tangent.
ATN2 Returns the angle in radians whose tangent is in between two given floats.
CEILING Returns the smallest integer greater than [...]]]></description>
			<content:encoded><![CDATA[<h2>Funciones numéricas</h2>
<p>&nbsp;
<p>
<strong>ABS</strong> Returns the absolute value of the expression.<br />
<strong>ACOS</strong> Returns the angle in radians for the given cosine.<br />
<strong>ASIN </strong>Returns the angle in radians for the given sine.<br />
<strong>ATAN </strong>Returns the angle in radians for the given tangent.<br />
<strong>ATN2 </strong>Returns the angle in radians whose tangent is in between two given floats.<br />
<strong>CEILING </strong>Returns the smallest integer greater than or equal to a given expression.<br />
<strong>COS </strong>Returns the cosine from a given angle (in radians).<br />
<strong>COT </strong>Returns the cotangent from a given angle (in radians).<br />
<strong>DEGREES </strong>Returns a degrees value from a given expression (in radians).<br />
<strong>EXP </strong>Returns the exponential value of the expression.<br />
<strong>FLOOR </strong>Returns the largest integer that is less than or equal to the given expression.<br />
<strong>LOG </strong>Returns the natural logarithm of a given expression.<br />
<strong>LOG10 </strong>Returns the base 10 logarithm of the given expression.<br />
<strong>PI </strong>Returns number PI (3.1415926535897931...).<br />
<strong>POWER </strong>Returns the result of an expression in power n.<br />
<strong>RADIANS </strong>Returns radians from degrees.<br />
<strong>RAND </strong>Returns the random float number in the range of 0 to 1.<br />
<strong>ROUND </strong>Returns a numeric expression rounded to a specified length or precision.<br />
<strong>SIGN </strong>Returns +1 for positive expressions, 0 for zero, and –1 for negative expressions.<br />
<strong>SIN </strong>Returns the sine from a given angle (in radians).<br />
<strong>SQUARE </strong>Returns the expression squared.<br />
<strong>SQRT </strong>Returns the square root of the given expression.<br />
<strong>TAN </strong>Returns the tangent of the given expression. <a href="http://www.lopezatienza.es/sql-server/sql-server-funciones/#more-149" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/sql-server/sql-server-funciones/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Renombrar Archivo o Carpeta</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-renombrar-archivo-o-carpeta/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-renombrar-archivo-o-carpeta/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 10:31:47 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-renombrar-archivo-o-carpeta/</guid>
		<description><![CDATA[&#160;
Comentarios
&#160;
En este artículo os muestro la forma de renombrar un archivo o una carpeta.
]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<h2>Comentarios</h2>
<p>&nbsp;</p>
<p>En este artículo os muestro la forma de renombrar un archivo o una carpeta.<br />
 <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-renombrar-archivo-o-carpeta/#more-147" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-renombrar-archivo-o-carpeta/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Obtener la IP de una URL o un Dominio</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-la-ip-de-una-url-o-un-dominio/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-la-ip-de-una-url-o-un-dominio/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 19:10:49 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-la-ip-de-una-url-o-un-dominio/</guid>
		<description><![CDATA[Comentarios
&#160;
En este artículo os muestro una función que se le pasa como parámetro un tipo String, que puede ser tanto una url (Ej: www.google.es) como un nombre de dominio (Ej: DOMINIO.COM), y devuelve una colección de String con todas las IPs asociadas a dicha url o dominio.
&#160;
]]></description>
			<content:encoded><![CDATA[<h2>Comentarios</h2>
<p>&nbsp;</p>
<p>En este artículo os muestro una función que se le pasa como parámetro un tipo String, que puede ser tanto una url (Ej: www.google.es) como un nombre de dominio (Ej: DOMINIO.COM), y devuelve una colección de String con todas las IPs asociadas a dicha url o dominio.</p>
<p>&nbsp;</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-la-ip-de-una-url-o-un-dominio/#more-146" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-la-ip-de-una-url-o-un-dominio/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows - Apagado remoto en Windows XP</title>
		<link>http://www.lopezatienza.es/windows/windows-apagado-remoto-en-windows-xp/</link>
		<comments>http://www.lopezatienza.es/windows/windows-apagado-remoto-en-windows-xp/#comments</comments>
		<pubDate>Mon, 07 Jun 2010 09:53:03 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/windows/windows-apagado-remoto-en-windows-xp/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo realizar un apagado remoto de un equipo que se encuentre dentro de nuestra red.
Tenemos que configurar las Políticas de grupo del equipo que queremos apagar de forma remota.
]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar cómo realizar un apagado remoto de un equipo que se encuentre dentro de nuestra red.</p>
<p>Tenemos que configurar las Políticas de grupo del equipo que queremos apagar de forma remota.</p>
<p> <a href="http://www.lopezatienza.es/windows/windows-apagado-remoto-en-windows-xp/#more-145" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/windows/windows-apagado-remoto-en-windows-xp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Trabajar con archivos XML (XmlTextWriter)</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-trabajar-con-archivos-xml/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-trabajar-con-archivos-xml/#comments</comments>
		<pubDate>Mon, 31 May 2010 08:43:36 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-trabajar-con-archivos-xml/</guid>
		<description><![CDATA[Hola a todos.
Voy a explicar un ejemplo sencillo para leer y escribir en un archivo xml desde vb.net
Primeramente creamos un archivo con extensión xml. En este ejemplo vamos a trabajar con un archivo que guarda la hora y minuto de 2 horas diferentes.
]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>Voy a explicar un ejemplo sencillo para leer y escribir en un archivo xml desde vb.net</p>
<p>Primeramente creamos un archivo con extensión xml. En este ejemplo vamos a trabajar con un archivo que guarda la hora y minuto de 2 horas diferentes.<br />
 <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-trabajar-con-archivos-xml/#more-144" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-trabajar-con-archivos-xml/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Split con mas de un caracter</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-split-con-mas-de-un-caracter/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-split-con-mas-de-un-caracter/#comments</comments>
		<pubDate>Thu, 27 May 2010 10:32:58 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-split-con-mas-de-un-caracter/</guid>
		<description><![CDATA[Hola a todos.
Me he visto en la necesidad de realizar un Split a una cadena de texto String, pero la primera sobrecarga del método Split (la que siempre he utilizado), únicamente funciona con un único caracter, por mucho que se le pase como parámetro una cadena de texto, te cogerá el primer caracter de la [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>Me he visto en la necesidad de realizar un <em>Split</em> a una cadena de texto <em>String</em>, pero la primera sobrecarga del método <em>Split </em>(la que siempre he utilizado), únicamente funciona con un único caracter, por mucho que se le pase como parámetro una cadena de texto, te cogerá el primer caracter de la cadena.</p>
<p>La solución para poder hacerle un <em>Split</em> con una cadena de texto se encuentra en otra sobrecarga de este método.</p>
<p><em>String<span>.</span>Split Method (<span></span>String<span>()</span>, StringSplitOptions)</em></p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-split-con-mas-de-un-caracter/#more-143" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-split-con-mas-de-un-caracter/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Realizar una transacción</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-realizar-una-transaccion/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-realizar-una-transaccion/#comments</comments>
		<pubDate>Mon, 17 May 2010 09:18:46 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-realizar-una-transaccion/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo realizar una transacción desde Visual Basic .NET.
Esto es muy importante para poder dejar la base de datos en el estado original antes de realizar cualquier modificación, si ocurre algún error al ejecutar algunas sentencias DML, o por algún fallo del código de programación.
Hay que tener en [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar cómo realizar una transacción desde Visual Basic .NET.</p>
<p>Esto es muy importante para poder dejar la base de datos en el estado original antes de realizar cualquier modificación, si ocurre algún error al ejecutar algunas sentencias DML, o por algún fallo del código de programación.</p>
<p>Hay que tener en cuenta que esto es necesario al realizar más de una sentencia DML, ya que las sentencias de inserción, modificación y borrado ya son Transacciones, y no tendría sentido introducir esta sentencia dentro de una Transacción.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-realizar-una-transaccion/#more-142" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-realizar-una-transaccion/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Problema en Debug de un BackgroundWorker</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-problema-en-debug-de-un-backgroundworker/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-problema-en-debug-de-un-backgroundworker/#comments</comments>
		<pubDate>Thu, 06 May 2010 15:56:40 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-problema-en-debug-de-un-backgroundworker/</guid>
		<description><![CDATA[Hola a todos.
Me he encontrado después de debugar correctamente siempre dentro de un DoWork() de un BackgroundWorker, que de pronto los puntos de interrupciones (break-points) me dejaba el Visual Studio congelado unos segundos saliéndose a continuación, y no se realizaban las tareas que había a continuación del punto de interrupción, teniendo que reiniciar la depuración [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>Me he encontrado después de debugar correctamente siempre dentro de un <strong><em>DoWork()</em></strong> de un <em><strong>BackgroundWorker</strong></em>, que de pronto los puntos de interrupciones (<em><strong>break-points</strong></em>) me dejaba el Visual Studio congelado unos segundos saliéndose a continuación, y no se realizaban las tareas que había a continuación del punto de interrupción, teniendo que reiniciar la depuración ya que bloqueo el formulario de mientras que se realizan estas tareas, y no se llega a desbloquear nunca.</p>
<p>Si deshabilito los puntos de interrupción dentro de la función <em><strong>DoWork()</strong></em>, todo va correcto, pero si vuelvo a ponerlo me pasa de nuevo lo mismo.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-problema-en-debug-de-un-backgroundworker/#more-141" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-problema-en-debug-de-un-backgroundworker/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Obtener el número de bytes de un fichero</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-el-numero-de-bytes-de-un-fichero/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-el-numero-de-bytes-de-un-fichero/#comments</comments>
		<pubDate>Wed, 05 May 2010 08:10:25 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-el-numero-de-bytes-de-un-fichero/</guid>
		<description><![CDATA[Hola a todos.
En este artículo os paso una función para saber el número de bytes de un fichero, para ello utilizaremos la clase System.IO.FileInfo.
A esta función se le pasa la ruta del fichero, y devolverá un tipo Integer con el tamaño en bytes del fichero.
]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo os paso una función para <strong>saber el número de bytes de un fichero</strong>, para ello utilizaremos la clase <strong><em>System.IO.FileInfo</em></strong>.</p>
<p>A esta función se le pasa la ruta del fichero, y devolverá un tipo <strong><em>Integer</em></strong> con el tamaño en bytes del fichero.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-el-numero-de-bytes-de-un-fichero/#more-140" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-obtener-el-numero-de-bytes-de-un-fichero/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Función con combinación de teclas</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-funcion-con-combinacion-de-teclas/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-funcion-con-combinacion-de-teclas/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 14:31:01 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-funcion-con-combinacion-de-teclas/</guid>
		<description><![CDATA[ Hola a todos.
En este artículo voy a explicar cómo detectar una combinación de teclas, y realizar una acción teniendo en cuenta que se pulse la combinación que deseamos.Primeramente deberemos cambiar la propiedad KeyPreview de nuestro formulario a True, para así determinar si los eventos de teclado para los controles del formulario se registren junto [...]]]></description>
			<content:encoded><![CDATA[<p class="titulos"> Hola a todos.</p>
<p>En este artículo voy a explicar <strong>cómo detectar una combinación de teclas</strong>, y realizar una acción teniendo en cuenta que se pulse la combinación que deseamos.Primeramente deberemos cambiar la propiedad <em><strong>KeyPreview</strong></em> de nuestro formulario a <strong><em>True</em></strong>, para así <strong>determinar si los eventos de teclado para los controles del formulario se registren junto con el formulario</strong>.</p>
<p>A continuación vamos al evento <em><strong>KeyDown</strong></em> de nuestro formulario e introducimos el siguiente código:</p>
<p class="MsoNormal"> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-funcion-con-combinacion-de-teclas/#more-138" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-funcion-con-combinacion-de-teclas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Cancelar evento CheckedChanged de un CheckBox</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-cancelar-checkedchanged-de-un-checkbox/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-cancelar-checkedchanged-de-un-checkbox/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 11:34:39 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-cancelar-checkedchanged-de-un-checkbox/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a mostraros una forma de cancelar el evento CheckedChanged de un CheckBox, ya que el tipo EventArgs e no tiene e.Cancel, ni he encontrado una forma mejor de hacerlo.
Se trata de quitarle el manejador de evento CheckedChanged, para poder así cambiar el valor del tipo CheckBox sin que se [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a mostraros una forma de cancelar el evento <em>CheckedChanged</em> de un <em>CheckBox</em>, ya que el tipo <em>EventArgs e</em> no tiene <em>e.Cancel</em>, ni he encontrado una forma mejor de hacerlo.</p>
<p class="MsoNormal">Se trata de quitarle el manejador de evento <em>CheckedChanged</em>, para poder así cambiar el valor del tipo CheckBox sin que se produzca un bucle infinito, ya que si lo cambiamos en esta misma función se llamará indefinidamente y no tendrá fin.</p>
<p class="MsoNormal">Finalmente le establecemos de nuevo el manejador de evento.</p>
<p class="MsoNormal"> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-cancelar-checkedchanged-de-un-checkbox/#more-137" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-cancelar-checkedchanged-de-un-checkbox/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Enviar correos de forma asíncrona (SendAsync) con System.Net.Mail.SmtpClient</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-enviar-correos-de-forma-asincrona-sendasync/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-enviar-correos-de-forma-asincrona-sendasync/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 20:37:57 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-enviar-correos-de-forma-asincrona-sendasync/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a hablar del objeto System.Net.Mail.SmtpClient, y de cómo enviar correos de forma asíncrona (enviar correos en segundo plano), permitiendo que la aplicación quede libre para otras tareas.
Esta opción es indispensable si debemos enviar un gran número de correos, o si los Attachments del objeto MailMessage  tienen un peso considerable. [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a hablar del objeto <em>System.Net.Mail.SmtpClient</em>, y de cómo enviar correos de forma asíncrona (enviar correos en segundo plano), permitiendo que la aplicación quede libre para otras tareas.</p>
<p>Esta opción <strong>es indispensable si debemos enviar un gran número de correos, o si los <em>Attachments</em> del objeto <em>MailMessage</em>  tienen un peso considerable</strong>. He comprobado por experiencia que al realizar el envío por el método <em>Send</em>, si los <em>Attachments</em> tienen un peso alrededor de 5MB y 10MB, en ocasiones, incluso con una conexión a Internet óptima, salta una excepción de <em><strong><a href="http://msdn.microsoft.com/es-es/library/system.net.mail.smtpclient.timeout.aspx" target="_blank">Timeout</a></strong></em>, no he llegado a probar con conexiones lentas, pero ya os vaticino que tendréis altas probabilidades de sufrir esta excepción.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-enviar-correos-de-forma-asincrona-sendasync/#more-135" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-enviar-correos-de-forma-asincrona-sendasync/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - BackgroundWorker + ProgressBar</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-backgroundworker-progressbar/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-backgroundworker-progressbar/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 08:38:44 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-net-backgroundworker-progressbar/</guid>
		<description><![CDATA[Hola a todos.
En  este artículo voy a tratar de explicar mediante un proyecto de ejemplo, cómo hacer para realizar acciones de forma asíncrona con un objeto BackgroundWorker, para liberar la aplicación y que se pueda seguir trabajando sin que se quede bloqueada.
Esto es interesante cuando se precisa copiar archivos, enviar correos y otras acciones que [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En  este artículo voy a tratar de explicar mediante un proyecto de ejemplo, cómo hacer para realizar acciones de forma asíncrona con un objeto BackgroundWorker, para liberar la aplicación y que se pueda seguir trabajando sin que se quede bloqueada.</p>
<p>Esto es interesante cuando se precisa copiar archivos, enviar correos y otras acciones que requieren su tiempo.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-net-backgroundworker-progressbar/#more-134" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-net-backgroundworker-progressbar/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows - Como deshabilitar los puertos USB</title>
		<link>http://www.lopezatienza.es/windows/windows-como-deshabilitar-los-puertos-usb/</link>
		<comments>http://www.lopezatienza.es/windows/windows-como-deshabilitar-los-puertos-usb/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 12:45:16 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/windows/windows-como-deshabilitar-los-puertos-usb/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo deshabilitar los puertos USB en Windows XP.
Para conseguirlo deberemos entrar en el registro y modificar el valor de una variable.
Nota: Es importante hacer una copia de seguridad del registro antes de tocar nada.
]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar cómo <strong>deshabilitar los puertos USB en Windows XP</strong>.</p>
<p>Para conseguirlo deberemos entrar en el registro y modificar el valor de una variable.</p>
<p><strong>Nota: Es importante hacer una copia de seguridad del registro antes de tocar nada.</strong></p>
<p> <a href="http://www.lopezatienza.es/windows/windows-como-deshabilitar-los-puertos-usb/#more-133" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/windows/windows-como-deshabilitar-los-puertos-usb/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - WEB Services: Cambio de URL en tiempo de ejecución</title>
		<link>http://www.lopezatienza.es/visual-basic-net/web-services-cambio-de-url-en-tiempo-de-ejecucion/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/web-services-cambio-de-url-en-tiempo-de-ejecucion/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 08:38:28 +0000</pubDate>
		<dc:creator>The Boss</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/web-services-cambio-de-url-en-tiempo-de-ejecucion/</guid>
		<description><![CDATA[Como sabemos cuando añadimos una referencia a un servicio WEB se nos añade en el fichero de configuración app.config una linea en la que se especifica la URL que el sistema usará para acceder al servicio WEB al ejecutarse.
Cuando creamos una aplicación que será distribuida en entornos distintos como puede ser intranet e internet, una [...]]]></description>
			<content:encoded><![CDATA[<p>Como sabemos cuando añadimos una referencia a un servicio WEB se nos añade en el fichero de configuración app.config una linea en la que se especifica la URL que el sistema usará para acceder al servicio WEB al ejecutarse.</p>
<p>Cuando creamos una aplicación que será distribuida en entornos distintos como puede ser intranet e internet, una posible solución sería hacer dos publicaciones de la misma de forma que una tenga las URL de servicios WEB para acceso via internet y la otra las URL para acceso via INTRANET.</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/web-services-cambio-de-url-en-tiempo-de-ejecucion/#more-132" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/web-services-cambio-de-url-en-tiempo-de-ejecucion/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows - Como mapear un ftp como unidad de red en Windows XP</title>
		<link>http://www.lopezatienza.es/windows/windows-como-mapear-un-ftp-como-unidad-de-red-en-windows-xp/</link>
		<comments>http://www.lopezatienza.es/windows/windows-como-mapear-un-ftp-como-unidad-de-red-en-windows-xp/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 08:35:25 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/windows/windows-como-mapear-un-ftp-como-unidad-de-red-en-windows-xp/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo mapear un ftp como unidad de red en Windows XP.  Si alguna vez habeis mapeado una unidad de red, ya sea un equipo o una carpeta en la red, los pasos a seguir son muy parecidos, aunque deberemos aportar las credenciales de acceso al ftp, [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar <strong>cómo mapear un ftp como unidad de red en Windows XP</strong>.  Si alguna vez habeis mapeado una unidad de red, ya sea un equipo o una carpeta en la red, los pasos a seguir son muy parecidos, aunque deberemos aportar las credenciales de acceso al ftp, (en sistemas NTFS, deberemos tener permisos a la unidad de red que deseemos mapear).  Los pasos a seguir son los siguientes:</p>
<p> <a href="http://www.lopezatienza.es/windows/windows-como-mapear-un-ftp-como-unidad-de-red-en-windows-xp/#more-131" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/windows/windows-como-mapear-un-ftp-como-unidad-de-red-en-windows-xp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows - IIS 4.0, 5.0, 5.1 Aumentar el maximo de conexiones</title>
		<link>http://www.lopezatienza.es/windows/windows-iis-5-aumentar-el-maximo-de-conexiones/</link>
		<comments>http://www.lopezatienza.es/windows/windows-iis-5-aumentar-el-maximo-de-conexiones/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 20:05:35 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/windows/windows-iis-5-aumentar-el-maximo-de-conexiones/</guid>
		<description><![CDATA[Hola a todos.
En este  artículo voy a explicar cómo aumentar el máximo de conexiones concurrentes a una aplicación Web instalada en IIS 5.1 en Windows XP, ya que por defecto está configurado hasta 10 conexiones concurrentes. Aunque la configuración se realiza a nivel de IIS en general, es de suponer que afecta a todas las [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este  artículo voy a explicar cómo <strong>aumentar el máximo de conexiones concurrentes</strong> a una aplicación Web instalada en IIS 5.1 en Windows XP, ya que por defecto está configurado hasta 10 conexiones concurrentes. Aunque la configuración se realiza a nivel de IIS en general, es de suponer que afecta a todas las aplicaciones Web que tengamos instaladas.</p>
<p>El error con el que nos podemos encontrar es el siguiente:</p>
<p><strong>HTTP 403.9 - Access Forbidden: Too many users are connected</strong></p>
<p> <a href="http://www.lopezatienza.es/windows/windows-iis-5-aumentar-el-maximo-de-conexiones/#more-130" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/windows/windows-iis-5-aumentar-el-maximo-de-conexiones/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Windows - Formatear pendrive, tarjeta de memoria en NTFS</title>
		<link>http://www.lopezatienza.es/windows/windows-formatear-pendrive-tarjeta-de-memoria-en-ntfs/</link>
		<comments>http://www.lopezatienza.es/windows/windows-formatear-pendrive-tarjeta-de-memoria-en-ntfs/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 14:28:24 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/windows/windows-formatear-pendrive-tarjeta-de-memoria-en-ntfs/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo formatear ya sea un pendrive o una tarjeta de memoria de 8GB, 16GB, 32GB.. ya que como sabréis, si el formato que tiene es FAT o FAT32 no podremos copiar archivos que ocupen más de 4GB.
Tiene sus pros y sus contras, pero en esto no voy [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar cómo formatear ya sea un pendrive o una tarjeta de memoria de 8GB, 16GB, 32GB.. ya que como sabréis, si el formato que tiene es FAT o FAT32 no podremos copiar archivos que ocupen más de 4GB.</p>
<p>Tiene sus pros y sus contras, pero en esto no voy a entrar, si queréis más información sobre la diferencia de FAT, FAT32 y NTFS podeis ir a este enlace que lo detalla muy bien:</p>
<p> <a href="http://www.lopezatienza.es/windows/windows-formatear-pendrive-tarjeta-de-memoria-en-ntfs/#more-129" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/windows/windows-formatear-pendrive-tarjeta-de-memoria-en-ntfs/feed/</wfw:commentRss>
		</item>
		<item>
		<title>C - Relación de problemas resueltos en C</title>
		<link>http://www.lopezatienza.es/lenguaje-c/c-relacion-de-problemas-resueltos-en-c/</link>
		<comments>http://www.lopezatienza.es/lenguaje-c/c-relacion-de-problemas-resueltos-en-c/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 21:27:06 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Lenguaje C]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/c/c-relacion-de-problemas-resueltos-en-c/</guid>
		<description><![CDATA[RELACIÓN DE PROBLEMAS



Pedir cinco números por teclado      e ir guardándolos en un array de 5 componentes. Pasarlo a otro array y después mostrarlo por pantalla.
 Pedir seis números por teclado, guardarlos en un array y mostrar la suma de los que ocupan posiciones pares, además de sacar la media de todos [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin-left: 36pt; text-align: center; text-indent: -18pt" align="center"><span style="font-size: 14pt; font-family: Symbol"><span></span></span><strong><u><span style="font-size: 14pt">RELACIÓN DE PROBLEMAS<o:p></o:p></span></u></strong></p>
<p class="MsoNormal" style="text-align: center" align="center"><strong><u><span style="font-size: 14pt"><o:p><span style="text-decoration: none"><br />
</span></o:p></span></u></strong></p>
<ol style="margin-top: 0cm" start="1" type="1">
<li class="MsoNormal"><span style="font-size: 11pt; color: windowtext">Pedir cinco números por teclado      e ir guardándolos en un array de 5 componentes. Pasarlo a otro array y después mostrarlo por pantalla.</span><span style="font-size: 11pt"><o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-size: 11pt; color: black"><span> </span>Pedir seis números por teclado, guardarlos en un array y mostrar la suma de los que ocupan posiciones pares, además de sacar la media de todos ellos .</span><span style="font-size: 11pt"><o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-size: 11pt">Pedir cinco números por teclado, guardarlos en un array, y mostrar cual es el mayor y cual el menor.<o:p></o:p></span></li>
<li class="MsoNormal"><span style="font-size: 11pt">Pedir seis números por teclado, guardarlos en un array y decir cuales son divisibles por tres.</span></li>
<p> <a href="http://www.lopezatienza.es/lenguaje-c/c-relacion-de-problemas-resueltos-en-c/#more-128" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/lenguaje-c/c-relacion-de-problemas-resueltos-en-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Basic .NET - Asignar un valor a un campo de parámetro de un Crystal Report</title>
		<link>http://www.lopezatienza.es/visual-basic-net/visual-basic-asignar-un-valor-a-un-campo-de-parametro-de-un-crystal-report/</link>
		<comments>http://www.lopezatienza.es/visual-basic-net/visual-basic-asignar-un-valor-a-un-campo-de-parametro-de-un-crystal-report/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 12:59:06 +0000</pubDate>
		<dc:creator>lopezatienza</dc:creator>
		
		<category><![CDATA[Visual Basic .NET]]></category>

		<category><![CDATA[Visual Basic]]></category>

		<guid isPermaLink="false">http://www.lopezatienza.es/visual-basic-net/visual-basic-asignar-un-valor-a-un-campo-de-parametro-de-un-crystal-report/</guid>
		<description><![CDATA[Hola a todos.
En este artículo voy a explicar cómo asignar un valor a un campo de parámetro de un Crystal Report.
Primeramente crearemos  un Campo de parámetro en nuestro rpt.
Ya en nuestro rpt, vamos al Explorador de campos y hacemos click con el botón derecho en Campos de parámetro, y pulsamos en Nuevo:
]]></description>
			<content:encoded><![CDATA[<p>Hola a todos.</p>
<p>En este artículo voy a explicar cómo asignar un valor a un campo de parámetro de un Crystal Report.</p>
<p>Primeramente crearemos  un Campo de parámetro en nuestro rpt.</p>
<p>Ya en nuestro rpt, vamos al Explorador de campos y hacemos click con el botón derecho en Campos de parámetro, y pulsamos en Nuevo:</p>
<p> <a href="http://www.lopezatienza.es/visual-basic-net/visual-basic-asignar-un-valor-a-un-campo-de-parametro-de-un-crystal-report/#more-127" class="more-link">(more...)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lopezatienza.es/visual-basic-net/visual-basic-asignar-un-valor-a-un-campo-de-parametro-de-un-crystal-report/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
