<?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>Aztekmindz &#187; CSHARP</title>
	<atom:link href="http://aztekmindz.org/category/csharp/feed/" rel="self" type="application/rss+xml" />
	<link>http://aztekmindz.org</link>
	<description>Otro sitio creado con WordPress</description>
	<lastBuildDate>Mon, 14 Nov 2011 23:09:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Autoshooter para juegos FPS</title>
		<link>http://aztekmindz.org/2011/11/14/autoshooter-para-juegos-fps/</link>
		<comments>http://aztekmindz.org/2011/11/14/autoshooter-para-juegos-fps/#comments</comments>
		<pubDate>Mon, 14 Nov 2011 23:08:28 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
				<category><![CDATA[CSHARP]]></category>
		<category><![CDATA[Herramientas]]></category>
		<category><![CDATA[Juegos]]></category>

		<guid isPermaLink="false">http://aztekmindz.org/?p=349</guid>
		<description><![CDATA[Ocelote es un autoshooter programado en c# optimizado para monitorear un area determinada de pixeles en busca de un color ( target ) si los pixeles cambian al color del objetivo este lanza un click izquierdo para disparar. lo he probado con Nxxxuiz y funciona muy bien pero seguramente debe funcionar tmb para Quake, CS [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-350" style="margin: 10px;" title="ocelote" src="http://aztekmindz.org/wp-content/uploads/2011/11/ocelote.jpg" alt="" width="258" height="178" />Ocelote es un autoshooter programado en c# optimizado para monitorear un area determinada de pixeles en busca de un color ( target ) si los pixeles cambian al color del objetivo este lanza un click izquierdo para disparar.</p>
<p>lo he probado con Nxxxuiz y funciona muy bien pero seguramente debe funcionar tmb para Quake, CS y similares.</p>
<p>&nbsp;</p>
<p>Funcionamiento:</p>
<p><strong>Target RGB</strong> &#8211; El color en rgb del objetivo: ejemplo 255,30,30</p>
<p><strong>T.C</strong> &#8211; La tolerancia de color, yo utilizo 25 por las sombras y brillos pero depende cada quien variar este valor para ver con que tolerancia obtiene mejores resultados, entre menos sea buscara solo el color exacto.</p>
<p><strong>Area</strong> &#8211; Es el area en pixeles a escanear por default 2, esto quiere decir que escaneara un area de 4 Pixeles (2&#215;2) y si encuentra en esa area almenos la mitad de pixeles del color del objetivo lanza el disparo ( Clic Izquierdo)</p>
<p>Este autoshooter utiliza <strong>BitBlts</strong> para generar los bitmaps y <strong>lockbits</strong> para escanear el bitmap por bits en lugar de pixeles, de esta forma ahorramos recursos y es mucho,mucho,mucho mas rapido.</p>
<p>Enjoy It.</p>
<p><a href="http://www.megaupload.com/?d=ZFU4IDVT" target="_blank"> http://www.megaupload.com/?d=ZFU4IDVT</a></p>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2011/11/14/autoshooter-para-juegos-fps/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>HarukoSMS Envia SMS free en Mexico</title>
		<link>http://aztekmindz.org/2011/11/14/harukosms-envia-sms-free-en-mexico/</link>
		<comments>http://aztekmindz.org/2011/11/14/harukosms-envia-sms-free-en-mexico/#comments</comments>
		<pubDate>Mon, 14 Nov 2011 20:01:02 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
				<category><![CDATA[CSHARP]]></category>
		<category><![CDATA[Inseguridad]]></category>

		<guid isPermaLink="false">http://aztekmindz.org/?p=336</guid>
		<description><![CDATA[Antes que nada una disculpa por tener tan abandonado el sitio, me ocupe en otras cosas y me quede sin tiempo para seguir investigando y publicando entradas. Bueno después de 2 años desaparecido les traigo una sorpresita jeje HarukoSMS es un programa (Prueba de concepto) hecho en C# para el envio de SMS, el programa [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://aztekmindz.org/wp-content/uploads/2011/11/harukosms.jpg"><img class="alignleft size-full wp-image-340" style="margin: 10px;" title="harukosms" src="http://aztekmindz.org/wp-content/uploads/2011/11/harukosms.jpg" alt="" width="244" height="277" /></a></p>
<p>
Antes que nada una disculpa por tener tan abandonado el sitio, me ocupe en otras cosas y me quede sin tiempo para seguir investigando y publicando entradas.<br />
Bueno después de 2 años desaparecido les traigo una sorpresita jeje</p>
<p>
HarukoSMS es un programa (Prueba de concepto) hecho en C# para el envio de SMS, el programa aprovecha un fallo de seguridad en el carrier j.a.g.u.a.r-y.o.u, usenlo con responsabilidad y bajo su propio riesgo. Ni este sitio ni su autor se hacen responsables de usos inadecuados de esta prueba de concepto que únicamente fue programada con fines educativos.</p>
<p>
Es triste ver como la mayoría de los sistemas mexicanos están llenos de fallas garrafales como XSS, CSRF,SQL Injection y errores de diseño y atoenficiación como es el caso de esta empresa.<br />
Espero que los desarrolladores se preocupen más por la seguridad con la que diseñan sus sistemas, sistemas en los cuales la gente confía sus datos personales y su dinero.
</p>
<p>
Bueno les dejo el link mas abajo Enjoy It!<br />
<a href="http://www.megaupload.com/?d=415ROUAQ" target="_blank">http://www.megaupload.com/?d=415ROUAQ</a>
</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2011/11/14/harukosms-envia-sms-free-en-mexico/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>parametros out, ref y params en C#</title>
		<link>http://aztekmindz.org/2009/02/04/parametros-out-ref-y-params-en-c/</link>
		<comments>http://aztekmindz.org/2009/02/04/parametros-out-ref-y-params-en-c/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 05:15:51 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=301</guid>
		<description><![CDATA[Hola un ejemplo de los tipos de parametros en el net framework los tres tipos son &#8220;ref&#8221; el cual modifica el parametro que se le envia al metodo cambiando su valor original la unica diferencia que tiene con el parametro tipo out es que el parametro ref debe de ser inicializado antes de mandarlo al [...]]]></description>
			<content:encoded><![CDATA[<p>Hola un ejemplo de los tipos de parametros en el net framework los tres tipos son &#8220;ref&#8221; el cual modifica el parametro que se le envia al metodo cambiando su valor original la unica diferencia que tiene con el parametro tipo out es que el parametro ref debe de ser inicializado antes de mandarlo al metodo en caso del parametro tipo out no es necesaria la inicializacion del parametro asi mismo cuando el parametro que recibe el metodo es multivalor por ejemplo un array se usa anteponiendo la palabra params el siguiente codigo muestra sencillamente el uso de los diferentes tipos de parametros.</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Text</span>;</p>
<p>namespace ConsoleApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; class Program<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> Main<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> titulo = <span class="st0">&quot;No Asignada&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Asignar1<span class="br0">&#40;</span>ref titulo<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>titulo<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> Tipo;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Asignar2<span class="br0">&#40;</span>out Tipo<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>Tipo<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//*****************************</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> nombres = new <span class="kw4">string</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; asignar3<span class="br0">&#40;</span>nombres<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">static</span> <span class="kw4">void</span> Asignar1<span class="br0">&#40;</span>ref <span class="kw4">string</span> nombre<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; nombre = <span class="st0">&quot;www.aztekmindz.org&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">static</span> <span class="kw4">void</span> Asignar2<span class="br0">&#40;</span>out <span class="kw4">string</span> estilo<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; estilo = <span class="st0">&quot;programacion&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">static</span> <span class="kw4">void</span> asignar3<span class="br0">&#40;</span>params <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> coders<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; coders.<span class="me1">Length</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; coders<span class="br0">&#91;</span>i<span class="br0">&#93;</span> = <span class="st0">&quot;Octalh&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; coders<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = <span class="st0">&quot;rottingbyte&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">string</span> s in coders<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>s<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></p>
<p>&nbsp;</p></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2009/02/04/parametros-out-ref-y-params-en-c/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Insertar Registro, Filtrar SqlDataSource, SqlParameter en C# y ASP.NET</title>
		<link>http://aztekmindz.org/2008/12/08/insertar-registro-filtrar-sqldatasource-sqlparameter-en-c-y-aspnet/</link>
		<comments>http://aztekmindz.org/2008/12/08/insertar-registro-filtrar-sqldatasource-sqlparameter-en-c-y-aspnet/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 13:39:24 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=289</guid>
		<description><![CDATA[Hola de nuevo aqui un pequeno codigo de como insertar un registro a una base de datos en este caso mssql tomando como datos a insertar lo recibido en dos textboxes asi mismo nos muestra varios metodos escenciales para el manejo de querys y parametros en websites realizados en ASP.NET con el lenguaje C# cualquier [...]]]></description>
			<content:encoded><![CDATA[<p>Hola de nuevo aqui un pequeno codigo de como insertar un registro a una base de datos en este caso mssql tomando como datos a insertar lo recibido en dos textboxes asi mismo nos muestra varios metodos escenciales para el manejo de querys y parametros en websites realizados en ASP.NET con el lenguaje C# cualquier duda ya saben comuniquense con el staff</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Web</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">UI</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">UI</span>.<span class="me1">WebControls</span>;</p>
<p>public partial class _Default : System.<span class="me1">Web</span>.<span class="me1">UI</span>.<span class="me1">Page</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Page_Load<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> miconn = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> micomm = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataAdapter</span> mida = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataAdapter</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">DataSet</span> mids = new System.<span class="me1">Data</span>.<span class="me1">DataSet</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="kw4">String</span> connstring = @<span class="st0">&quot;Data Source=.<span class="es0">\s</span>qlexpress;Initial Catalog=northwind;Integrated Security=True&quot;</span>;</p>
<p>
&nbsp; &nbsp; protected <span class="kw4">void</span> Button1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>miconn.<span class="me1">State</span> == System.<span class="me1">Data</span>.<span class="me1">ConnectionState</span>.<span class="me1">Open</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Label1.<span class="me1">Text</span> = <span class="st0">&quot;Conexion exitosa a la base de datos&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; micomm.<span class="me1">CommandType</span> = System.<span class="me1">Data</span>.<span class="me1">CommandType</span>.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; micomm.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT * FROM Prueba WHERE (Nombre = @Nombre)&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; micomm.<span class="me1">Connection</span> = miconn;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">SelectCommand</span> = micomm;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">SelectCommand</span>.<span class="me1">Parameters</span>.<span class="me1">Add</span><span class="br0">&#40;</span>new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlParameter</span><span class="br0">&#40;</span><span class="st0">&quot;@Nombre&quot;</span>, TextBox1.<span class="me1">Text</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">Fill</span><span class="br0">&#40;</span>mids<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; GridView1.<span class="me1">DataSource</span> = mids;<br />
&nbsp; &nbsp; &nbsp; &nbsp; GridView1.<span class="me1">EmptyDataText</span> = <span class="st0">&quot;record no encontrado&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; GridView1.<span class="me1">DataBind</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mids.<span class="me1">Clear</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Button2_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; micomm.<span class="me1">CommandText</span> = <span class="st0">&quot;INSERT INTO Prueba VALUES(@nombre,@telefono)&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; micomm.<span class="me1">Connection</span> = miconn;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">InsertCommand</span> = micomm;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">InsertCommand</span>.<span class="me1">Parameters</span>.<span class="me1">Add</span><span class="br0">&#40;</span>new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlParameter</span><span class="br0">&#40;</span><span class="st0">&quot;@nombre&quot;</span>, TextBox2.<span class="me1">Text</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">InsertCommand</span>.<span class="me1">Parameters</span>.<span class="me1">Add</span><span class="br0">&#40;</span>new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlParameter</span><span class="br0">&#40;</span><span class="st0">&quot;@telefono&quot;</span>, TextBox3.<span class="me1">Text</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; mida.<span class="me1">InsertCommand</span>.<span class="me1">ExecuteNonQuery</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; miconn.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>
<span class="br0">&#125;</span></p>
<p>&nbsp;</p></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/12/08/insertar-registro-filtrar-sqldatasource-sqlparameter-en-c-y-aspnet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ExecuteScalar(), ExecuteReader(),  en C#</title>
		<link>http://aztekmindz.org/2008/11/17/executescalar-executereader-en-c/</link>
		<comments>http://aztekmindz.org/2008/11/17/executescalar-executereader-en-c/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 04:26:47 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=263</guid>
		<description><![CDATA[Hola de nuevo aqui les dejo unos Pequeños codigos sobre dos de los metodos principales de ADO.NET ExecuteReader(), y ExecuteScalar() asi como ConnectionString, SqlConnection, SqlCommand y varios metodos y propiedades mas del espacio de nombres System.Data.Common, System.Data.SqlClient En tres Tipos de proyectos diferentes como son ConsoleApplication,  Asp.Net-WebForms y WinForms Como ustedes sabran Ado.Net es la parte [...]]]></description>
			<content:encoded><![CDATA[<p>Hola de nuevo aqui les dejo unos Pequeños codigos sobre dos de los metodos principales de ADO.NET ExecuteReader(), y ExecuteScalar() asi como ConnectionString, SqlConnection, SqlCommand y varios metodos y propiedades mas del espacio de nombres System.Data.Common, System.Data.SqlClient En tres Tipos de proyectos diferentes como son ConsoleApplication,  Asp.Net-WebForms y WinForms Como ustedes sabran Ado.Net es la parte de la plataforma de desarrollo de Microsoft  .NetFramework encargada del manejo creacion de consultas Querys StoredProcedures, Triggers etc lo que nos permite desarrollar nuestras aplicaciones y proyectos en conjuncion con nuestra base de datos para el almacenamiento y explotacion de informacion ADO.NET Dispone de espacios de nombres especificos para el desarrollo especializado en ciertas bases de datos como es System.Data que contiene los metodos y propiedades generales para todos los tipos de bases de datos asi como System.Data.SqlClient que su funcion esta especificamente Creada para el manejo y programacion con Bases de datos y servidores MsSql, System.Data.Odbc y System.Data.OleDb nos permite trabajar con basesde datos tan diversas como FireBird, MySql , Access, Postgree etc y por ultimo System.Data.OracleClient que nos permite el desarrollo especifico sobre bases de datos Oracle</p>
<p>Aqui Esta un Pequeño ejemplo en Asp.Net</p>
<div class="dean_ch" style="white-space: wrap;">using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Web</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">UI</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">UI</span>.<span class="me1">WebControls</span>;</p>
<p>public partial class _Default : System.<span class="me1">Web</span>.<span class="me1">UI</span>.<span class="me1">Page</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Page_Load<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; System.<span class="me1">Collections</span>.<span class="me1">ArrayList</span> miarraylist1 = new System.<span class="me1">Collections</span>.<span class="me1">ArrayList</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> misqlconn1 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="kw4">string</span> connstring = @<span class="st0">&quot;Data Source=.<span class="es0">\S</span>QLEXPRESS;AttachDbFilename=C:<span class="es0">\D</span>ocuments and Settings<span class="es0">\A</span>nita<span class="es0">\M</span>is documentos<span class="es0">\W</span>ebSite1<span class="es0">\D</span>atabase<span class="es0">\n</span>orthwind.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True&quot;</span>;<br />
&nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> misqlcommand = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; protected <span class="kw4">void</span> Button1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandType</span> = System.<span class="me1">Data</span>.<span class="me1">CommandType</span>.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">Connection</span> = misqlconn1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT * FROM Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataReader</span> misqldatareader1 = misqlcommand.<span class="me1">ExecuteReader</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>misqldatareader1.<span class="me1">HasRows</span> == <span class="kw2">true</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span>misqldatareader1.<span class="me1">Read</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ListBox1.<span class="me1">Items</span>.<span class="me1">Add</span><span class="br0">&#40;</span>misqldatareader1.<span class="me1">GetSqlInt32</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Button2_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandType</span> = System.<span class="me1">Data</span>.<span class="me1">CommandType</span>.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">Connection</span> = misqlconn1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT * FROM Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataReader</span> misqldatareader2 = misqlcommand.<span class="me1">ExecuteReader</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>misqldatareader2.<span class="me1">HasRows</span> == <span class="kw2">true</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span>misqldatareader2.<span class="me1">Read</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; DropDownList1.<span class="me1">Items</span>.<span class="me1">Add</span><span class="br0">&#40;</span>misqldatareader2.<span class="me1">GetString</span><span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Button3_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandType</span> = System.<span class="me1">Data</span>.<span class="me1">CommandType</span>.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">Connection</span> = misqlconn1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT * FROM Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataReader</span> misqldatareader3 = misqlcommand.<span class="me1">ExecuteReader</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>misqldatareader3.<span class="me1">HasRows</span> == <span class="kw2">true</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span>misqldatareader3.<span class="me1">Read</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miarraylist1.<span class="me1">Add</span><span class="br0">&#40;</span>misqldatareader3.<span class="me1">GetString</span><span class="br0">&#40;</span><span class="nu0">2</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; GridView1.<span class="me1">DataSource</span> = miarraylist1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; GridView1.<span class="me1">DataBind</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; protected <span class="kw4">void</span> Button4_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">ConnectionString</span> = connstring;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT COUNT(*) FROM Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">Connection</span> = misqlconn1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlcommand.<span class="me1">CommandType</span> = System.<span class="me1">Data</span>.<span class="me1">CommandType</span>.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> numeroregistros = <span class="br0">&#40;</span><span class="kw4">int</span><span class="br0">&#41;</span>misqlcommand.<span class="me1">ExecuteScalar</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; TextBox1.<span class="me1">Text</span> = <span class="st0">&quot;Tienes &quot;</span> + numeroregistros.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">&quot; Registros&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; misqlconn1.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Aqui otro pequeño codigo en ConsoleApplication</p>
<div class="dean_ch" style="white-space: wrap;">using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Text</span>;</p>
<p>namespace ConsoleApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; class Program<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> Main<span class="br0">&#40;</span><span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> args<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co2">#region Numero1</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> misqlconnection1 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span>@<span class="st0">&quot;Data Source=.<span class="es0">\S</span>QLEXPRESS;AttachDbFilename=C:<span class="es0">\D</span>ocuments and Settings<span class="es0">\A</span>nita<span class="es0">\M</span>is documentos<span class="es0">\M</span>is archivos recibidos<span class="es0">\n</span>orthwind.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True &quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> misqlcommand1 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="st0">&quot;SELECT LastName FROM Employees&quot;</span>, misqlconnection1<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection1.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> a = <span class="br0">&#40;</span><span class="kw4">string</span><span class="br0">&#41;</span>misqlcommand1.<span class="me1">ExecuteScalar</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection1.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection1.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>a.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co2">#endregion</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co2">#region Numero2</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> misqlconnection2 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span>@<span class="st0">&quot;Data Source=.<span class="es0">\S</span>QLEXPRESS;AttachDbFilename=C:<span class="es0">\D</span>ocuments and Settings<span class="es0">\A</span>nita<span class="es0">\M</span>is documentos<span class="es0">\M</span>is archivos recibidos<span class="es0">\n</span>orthwind.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True &quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> misqlcommand2 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlcommand2.<span class="me1">Connection</span> = misqlconnection2;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlcommand2.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT COUNT(*)FROM dbo.Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection2.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> a = <span class="br0">&#40;</span><span class="kw4">int</span><span class="br0">&#41;</span>misqlcommand2.<span class="me1">ExecuteScalar</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection2.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection2.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>a.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co2">#endregion</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> misqlconnection3 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span>@<span class="st0">&quot;Data Source=.<span class="es0">\S</span>QLEXPRESS;AttachDbFilename=C:<span class="es0">\D</span>ocuments and Settings<span class="es0">\A</span>nita<span class="es0">\M</span>is documentos<span class="es0">\M</span>is archivos recibidos<span class="es0">\n</span>orthwind.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True &quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> misqlcommand3 = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlcommand3.<span class="me1">CommandText</span> = <span class="st0">&quot;SELECT * FROM Employees&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlcommand3.<span class="me1">Connection</span> = misqlconnection3;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection3.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataReader</span> misqldatareader = misqlcommand3.<span class="me1">ExecuteReader</span><span class="br0">&#40;</span>System.<span class="me1">Data</span>.<span class="me1">CommandBehavior</span>.<span class="me1">CloseConnection</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>misqldatareader.<span class="me1">HasRows</span> == <span class="kw2">true</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span>misqldatareader.<span class="me1">Read</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Posicion &quot;</span> + misqldatareader.<span class="me1">GetInt32</span><span class="br0">&#40;</span><span class="nu0">0</span><span class="br0">&#41;</span> + <span class="st0">&quot; Data &quot;</span> + misqldatareader.<span class="me1">GetSqlString</span><span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection3.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconnection3.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>Por Ultimo otro Code Basado en WinForms</p>
<div class="dean_ch" style="white-space: wrap;">using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">ComponentModel</span>;<br />
using System.<span class="me1">Data</span>;<br />
using System.<span class="me1">Drawing</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Text</span>;<br />
using System.<span class="me1">Windows</span>.<span class="me1">Forms</span>;</p>
<p>namespace WindowsFormsApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; public partial class Form1 : Form<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public Form1<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; InitializeComponent<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Collections</span>.<span class="me1">ArrayList</span> miarraylist = new System.<span class="me1">Collections</span>.<span class="me1">ArrayList</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> connstring = @<span class="st0">&quot;Data Source=.<span class="es0">\S</span>QLEXPRESS;AttachDbFilename=C:<span class="es0">\D</span>ocuments and Settings<span class="es0">\A</span>nita<span class="es0">\M</span>is documentos<span class="es0">\M</span>is archivos recibidos<span class="es0">\n</span>orthwind.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span> misqlconn = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlConnection</span><span class="br0">&#40;</span>connstring<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span> misqlcommand = new System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlCommand</span><span class="br0">&#40;</span><span class="st0">&quot;SELECT * FROM Employees&quot;</span>, misqlconn<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconn.<span class="me1">Open</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.<span class="me1">Data</span>.<span class="me1">SqlClient</span>.<span class="me1">SqlDataReader</span> misqldatareader = misqlcommand.<span class="me1">ExecuteReader</span><span class="br0">&#40;</span>CommandBehavior.<span class="me1">CloseConnection</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>misqldatareader.<span class="me1">HasRows</span> == <span class="kw2">true</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>System.<span class="me1">Data</span>.<span class="me1">Common</span>.<span class="me1">DbDataRecord</span> midatarecord in misqldatareader<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miarraylist.<span class="me1">Add</span><span class="br0">&#40;</span>midatarecord<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconn.<span class="me1">Close</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; misqlconn.<span class="me1">Dispose</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button2_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; BindingSource mibindingsource = new BindingSource<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mibindingsource.<span class="me1">DataSource</span> = miarraylist;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dataGridView1.<span class="me1">DataSource</span> = mibindingsource;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/11/17/executescalar-executereader-en-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Webservices C#</title>
		<link>http://aztekmindz.org/2008/10/01/webservices-c/</link>
		<comments>http://aztekmindz.org/2008/10/01/webservices-c/#comments</comments>
		<pubDate>Wed, 01 Oct 2008 21:42:20 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=248</guid>
		<description><![CDATA[Hola de nuevo aqui un pequeño ejemplo de creacion de un webservice en c# asi como su implementacion y consumo del servicio debemos recordar que los webservices deben de ser alojados en el IIS (internet information server) y ser llamados via service reference en Visual Studio al igual como se muestra haciendo click en la [...]]]></description>
			<content:encoded><![CDATA[<p>Hola de nuevo aqui un pequeño ejemplo de creacion de un webservice en c# asi como su implementacion y consumo del servicio debemos recordar que los webservices deben de ser alojados en el IIS (internet information server) y ser llamados via service reference en Visual Studio al igual como se muestra haciendo click en la foto vemos que hemos llamado nuestro service via webbrowser pero en este caso sin beneficio alguno unicamente mostrandonos los metodos expuestos en el web service no asi cuando hacemos referencia a nuestro webservice en nuestra aplicacion que estamos desarrollando, los webservces son llamados via http no asi como su evolucion la llamada Windows Comunication Foundation (WCF) que es una evolucion total en los webservices que en un futuro pondre un extenso post acerca de esa nueva tecnologia que nos ofrece la mas reciente version del .NetFramework 3.5</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Collections</span>;<br />
using System.<span class="me1">ComponentModel</span>;<br />
using System.<span class="me1">Data</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Web</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">Services</span>;<br />
using System.<span class="me1">Web</span>.<span class="me1">Services</span>.<span class="me1">Protocols</span>;<br />
using System.<span class="me1">Xml</span>.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Runtime</span>.<span class="me1">InteropServices</span>;<br />
using System.<span class="me1">Text</span>;<br />
namespace WebService1<br />
<span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; <span class="co1">// Estos parametros nos indican que la clase es un webservice</span><br />
&nbsp; &nbsp; <span class="br0">&#91;</span>WebService<span class="br0">&#40;</span>Namespace = <span class="st0">&quot;http://tempuri.org/&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span><br />
&nbsp; &nbsp; <span class="br0">&#91;</span>WebServiceBinding<span class="br0">&#40;</span>ConformsTo = WsiProfiles.<span class="me1">BasicProfile1_1</span><span class="br0">&#41;</span><span class="br0">&#93;</span><br />
&nbsp; &nbsp; <span class="br0">&#91;</span>ToolboxItem<span class="br0">&#40;</span><span class="kw2">false</span><span class="br0">&#41;</span><span class="br0">&#93;</span></p>
<p>&nbsp; &nbsp; <span class="co1">// [System.Web.Script.Services.ScriptService]</span><br />
&nbsp; &nbsp; public class Service1 : System.<span class="me1">Web</span>.<span class="me1">Services</span>.<span class="me1">WebService</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Esta propiedad nos indica que el metodo sera parte del web service</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>WebMethod<span class="br0">&#93;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// asi mismo creamos un simple metodo que nos regresa un string</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> Saludos<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="st0">&quot;Hola desde mi webservice&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Aqui creamos un metodo no declarado como &quot;webmethod pues es el encargado de hacer la llamada &nbsp;ala api ala dll winnm.dll</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//el metodo lleva la palabra extern que nos indica que es ajeno al .net framework y que basados al espacio de nombres</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//System.runtime.interopservices el cual es necesario para hacer las apicalls</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>DllImport<span class="br0">&#40;</span><span class="st0">&quot;winmm.dll&quot;</span>, EntryPoint = <span class="st0">&quot;mciSendStringA&quot;</span>, CharSet = CharSet.<span class="me1">Ansi</span><span class="br0">&#41;</span><span class="br0">&#93;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; protected <span class="kw4">static</span> <span class="kw2">extern</span> <span class="kw4">int</span> mciSendString<span class="br0">&#40;</span><span class="kw4">string</span> lpstrCommand, StringBuilder lpstrReturnString, <span class="kw4">int</span> uReturnLength, IntPtr hwndCallback<span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// aqui creamos uno mas con una llamada ala api de windows que nos abre el cd del equipo donde este hospedado el webservice</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>WebMethod<span class="br0">&#93;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">void</span> abrircd<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mciSendString<span class="br0">&#40;</span><span class="st0">&quot;set cdaudio door open&quot;</span>, <span class="kw2">null</span>, <span class="nu0">0</span>, IntPtr.<span class="me1">Zero</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Un simple metodo mas que nos permite conectarnos a una base de datos via webservicey que nos retorna un string</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//indicandonos el exito en el metodo</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>WebMethod<span class="br0">&#93;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> insertarrecord<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Aqui desarrollmos todo el codigo para implementar la coneccion a una base de datos</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// asi como los metodos datasets data adapters etc para el manejo de la base de datos hospedada en el sistema</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// donde esta hospedado el host</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="st0">&quot;exito en la insercion en la base de datos&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p><span style="color: #ff0000;">Click</span> en la <span style="color: #ff0000;">imagen</span> para ver el webservice llamado via webbrowser que simplemente nos muestra los metodos que contiene nuestro servicio y que pueden ser consumidos<br />
<a href="http://www.aztekmindz.org/wp-content/uploads/2008/10/dibujo.jpg"><img class="alignleft size-full wp-image-250" title="dibujo" src="http://www.aztekmindz.org/wp-content/uploads/2008/10/dibujo.jpg" alt="" width="500" height="375" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/10/01/webservices-c/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Generics C#</title>
		<link>http://aztekmindz.org/2008/09/22/generics-c/</link>
		<comments>http://aztekmindz.org/2008/09/22/generics-c/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 19:15:51 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=238</guid>
		<description><![CDATA[Hola de nuevo aqui les dejo un pequeno ejemplo de lo que son los genericos en C# una pequeña explicacion de lo que son genericos seria que por ejemplo cuando tenemos un metodo dentro de nuestra clase que recibe parametros por ejemplo de tipo int al no ser de tipo generico la clase ni nuestro [...]]]></description>
			<content:encoded><![CDATA[<p>Hola de nuevo aqui les dejo un pequeno ejemplo de lo que son los genericos en C# una pequeña explicacion de lo que son genericos seria que por ejemplo cuando tenemos un metodo dentro de nuestra clase que recibe parametros por ejemplo de tipo int al no ser de tipo generico la clase ni nuestro metodo estamos obligados que al momento de instanciar nuestra clase y llamar al metodo obligatoriamente tenemos que pasarle el paramentro de tipo int cosa muy diferente al trabajar con genericos pues podemos crear clases y metodos que reciben parametros de cualquier tipo lo que nos facilita mucho el desarrollo de nuestro codigo sin mas que agregar ahi les dejo un codigo de muestra ya saben cualuier duda comuniquense con el staff!!</p>
<div class="dean_ch" style="white-space: wrap;">
<span class="co1">//Generics in C#</span></p>
<p>using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Text</span>;</p>
<p>namespace ConsoleApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; class Program<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//ya qui en nuestro metodo principal &quot;Main()&quot; hacemos uso de nuestras clases genericas</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> Main<span class="br0">&#40;</span><span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> args<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Primero creamos una lista generica que se encuantra en el espacio de nombres</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//System.Collections.Generics.List y como tipo agregamos nuestra clase llamada listagenerica</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//pues el uso de genericos en c# y en .net no solo se limita a tipos como int string bool etc</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; List<br />
&nbsp;milistagenerica = new List<br />
<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// y agregamos algunos objetos a nuestra lista</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; milistagenerica.<span class="me1">Add</span><span class="br0">&#40;</span>new listagenerica<span class="br0">&#40;</span><span class="st0">&quot;Octalh&quot;</span>, <span class="st0">&quot;C++ , Delphi Coder&quot;</span>, <span class="st0">&quot;Privada&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; milistagenerica.<span class="me1">Add</span><span class="br0">&#40;</span>new listagenerica<span class="br0">&#40;</span><span class="st0">&quot;xxxnocturnoxxx&quot;</span>, <span class="st0">&quot;C# .Net Coder&quot;</span>, <span class="st0">&quot;Privada&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Con el siguiente bucle representamos el contenido de nuestra lista generica con un simple foreach</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>listagenerica Coder in milistagenerica<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Nombre &quot;</span> + Coder.<span class="me1">Nombre</span> + <span class="st0">&quot;,&quot;</span> + Coder.<span class="me1">Puesto</span> + <span class="st0">&quot;,&quot;</span> + Coder.<span class="me1">Direccion</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Asi mismo podemos usar un bucle for</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; milistagenerica.<span class="me1">Count</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Nombre &quot;</span> + milistagenerica<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">Nombre</span> + <span class="st0">&quot;,&quot;</span> + milistagenerica<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">Puesto</span> + <span class="st0">&quot;,&quot;</span> + milistagenerica<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">Direccion</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Aqui creamos dos instancias de nuestra clase generica una de tipo boolean y otra de tipo int</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tipos miclasetipos1 = new tipos<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miclasetipos1.<span class="me1">analisis1</span><span class="br0">&#40;</span><span class="kw2">true</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tipos miclasetipos2 = new tipos<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miclasetipos2.<span class="me1">analisis1</span><span class="br0">&#40;</span><span class="nu0">4500</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Aqui instanciamos la clase saludo y le pasamos parametros de diferente tipo al metodo de la clase generica saludo1</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; saludos saludostring = new saludos<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>saludostring.<span class="me1">saludo1</span><span class="br0">&#40;</span><span class="st0">&quot;Variable tipo string&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; saludos saludosint = new saludos<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span>saludosint.<span class="me1">saludo1</span><span class="br0">&#40;</span><span class="nu0">5000</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="co1">// creamos una clase de tipo generico que en este caso le daremos a los metodos</span><br />
&nbsp; &nbsp; <span class="co1">// el parametro de tipo string</span><br />
&nbsp; &nbsp; class saludos<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Creamos varios metodos de tipo generico</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> saludo1<span class="br0">&#40;</span>t varcualquiertipo<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="st0">&quot;Hola &quot;</span> + varcualquiertipo;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="co1">// Creamos una clase de tipo generico aqui le daremos a los metodos que contiene</span><br />
&nbsp; &nbsp; <span class="co1">// parametros de diferente tipo</span><br />
&nbsp; &nbsp; class tipos<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">void</span> analisis1<span class="br0">&#40;</span>t tipo1<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Type mitipo = tipo1.<span class="me1">GetType</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;La variable es de tipo &quot;</span> + mitipo.<span class="me1">FullName</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="co1">// Esta clase contiene una lista generica</span><br />
&nbsp; &nbsp; class listagenerica<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//creamos tres campos dos de ellos tipo string y uno mas tipo int</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Asi mismo los encapsulamos para no tener acceso directamente</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// alas variables desde fuera de esta propia clase si no unicamente</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// a las propiedades que hemos creado gracias a la encapsulacion del campo</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> nombre;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> Nombre<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span class="br0">&#123;</span> <span class="kw1">return</span> nombre; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; set <span class="br0">&#123;</span> nombre = value; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> puesto;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> Puesto<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span class="br0">&#123;</span> <span class="kw1">return</span> puesto; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; set <span class="br0">&#123;</span> puesto = value; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> direccion;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> Direccion<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span class="br0">&#123;</span> <span class="kw1">return</span> direccion; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; set <span class="br0">&#123;</span> direccion = value; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Aqui creamos el constructor primario de la clase de la clase</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public listagenerica<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; nombre = <span class="st0">&quot;No establecido&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; puesto = <span class="st0">&quot;No aplica&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; direccion = <span class="st0">&quot;No aplica&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Aqui creamos el constructor secundario de la clase que al momento de que la</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// instanciemos nos permitira agregar valores a nuestro objeto</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public listagenerica<span class="br0">&#40;</span><span class="kw4">string</span> nombre, <span class="kw4">string</span> puesto, <span class="kw4">string</span> direccion<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; this.<span class="me1">nombre</span> = nombre;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; this.<span class="me1">puesto</span> = puesto;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; this.<span class="me1">direccion</span> = direccion;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/09/22/generics-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linq C#</title>
		<link>http://aztekmindz.org/2008/08/25/linq-c/</link>
		<comments>http://aztekmindz.org/2008/08/25/linq-c/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 08:34:33 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=202</guid>
		<description><![CDATA[Hola saludos de nuevo aqui les dejo un pequeno codigo de ejemplo de esta nueva funcionalidad que se encuentra en el netframework 3.5 que en mi propia opinion es una maravilla pues nos permite hace querys a nuestros propios objetos bases de datos xml files etc aqui veremos el uso de operadores linq como (from,in,where,orderby,groupby [...]]]></description>
			<content:encoded><![CDATA[<p>Hola saludos de nuevo aqui les dejo un pequeno codigo de ejemplo de esta nueva funcionalidad que se encuentra en el netframework 3.5 que en mi propia opinion es una maravilla pues nos permite hace querys a nuestros propios objetos bases de datos xml files etc aqui veremos el uso de operadores linq como (from,in,where,orderby,groupby etc) asi mismo algunos metodos de extension de estos operadores como son(Reverse&lt;&gt;() To Array&lt;&gt;() ToLIst&lt;&gt;()) Ya saben cualquier duda comuniquense con el staff</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">ComponentModel</span>;<br />
using System.<span class="me1">Data</span>;<br />
using System.<span class="me1">Drawing</span>;<br />
using System.<span class="me1">Linq</span>;<br />
using System.<span class="me1">Text</span>;<br />
using System.<span class="me1">Windows</span>.<span class="me1">Forms</span>;</p>
<p>namespace WindowsFormsApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; public partial class Form1 : Form<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public Form1<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; InitializeComponent<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* en este boton usando linq seleccionamos unicamente los miembros del array que contengan la letra &quot;a&quot; */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> nombres = <span class="br0">&#123;</span> <span class="st0">&quot;carlos&quot;</span>, <span class="st0">&quot;anita&quot;</span>, <span class="st0">&quot;mimi&quot;</span>, <span class="st0">&quot;osito&quot;</span>, <span class="st0">&quot;manuel&quot;</span>, <span class="st0">&quot;tina&quot;</span>, <span class="st0">&quot;lety&quot;</span> <span class="br0">&#125;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var familia = from n in nombres where n.<span class="me1">Contains</span><span class="br0">&#40;</span><span class="st0">&quot;a&quot;</span><span class="br0">&#41;</span> select n;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">string</span> w in familia<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>w<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* en este evento usando linq seleccionamos los valores del array menores a 30 */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button2_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span><span class="br0">&#91;</span><span class="br0">&#93;</span> edades = <span class="br0">&#123;</span> <span class="nu0">20</span>, <span class="nu0">45</span>, <span class="nu0">12</span>, <span class="nu0">3</span>, <span class="nu0">67</span>, <span class="nu0">87</span>, <span class="nu0">5</span>, <span class="nu0">44</span>, <span class="nu0">90</span>, <span class="nu0">14</span>, <span class="nu0">63</span>, <span class="nu0">55</span>, <span class="nu0">77</span>, <span class="nu0">22</span> <span class="br0">&#125;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var jovenes = from q in edades where q &lt; <span class="nu0">30</span> select q;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">int</span> w in jovenes<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>w.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* aqui creamos una clase anidada llamada carro que contiene los tipos necesarios para nuestra posterior lista */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; class Carro<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> conductor = <span class="kw2">null</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">int</span> velocidad = <span class="nu0">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">string</span> marca = <span class="kw2">null</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* Aqui hacemos uso de linq en la lista miscarros seleccionando solo lo que queremos */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button3_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; List miscarros = new List<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; new Carro<span class="br0">&#123;</span>conductor = <span class="st0">&quot;genkol&quot;</span>,marca = <span class="st0">&quot;bmw&quot;</span>,velocidad = <span class="nu0">350</span><span class="br0">&#125;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; new Carro<span class="br0">&#123;</span>conductor = <span class="st0">&quot;xxxnocturnoxxx&quot;</span>, marca =<span class="st0">&quot;lexus&quot;</span>, velocidad = <span class="nu0">400</span><span class="br0">&#125;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; new Carro<span class="br0">&#123;</span>conductor = <span class="st0">&quot;anita&quot;</span>, marca = <span class="st0">&quot;nissan&quot;</span>, velocidad = <span class="nu0">300</span><span class="br0">&#125;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; new Carro<span class="br0">&#123;</span>conductor = <span class="st0">&quot;manuel&quot;</span>, marca=<span class="st0">&quot;chrysler&quot;</span>, velocidad = <span class="nu0">320</span><span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var micarro = from p in miscarros where p.<span class="me1">conductor</span> == <span class="st0">&quot;xxxnocturnoxxx&quot;</span> select p;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>var mio in micarro<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span><span class="st0">&quot;Mi carro es &quot;</span> + mio.<span class="me1">marca</span> + <span class="st0">&quot; corre &quot;</span> + mio.<span class="me1">velocidad</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">&quot; Km/Hr&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* Aqui teenmos un array de objetos con tipos string int y bool usando linq le extraemos solo los tipos int */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button4_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; object<span class="br0">&#91;</span><span class="br0">&#93;</span> miscosas = <span class="br0">&#123;</span> <span class="nu0">10</span>, <span class="st0">&quot;carlos&quot;</span>, <span class="nu0">45</span>, <span class="kw2">true</span>, <span class="st0">&quot;mexico&quot;</span> <span class="br0">&#125;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; IEnumerable misints = miscosas.<span class="me1">OfType</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">int</span> a in misints<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>a.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* en este metodo simplemente usando loinq ponemos nuestro array en orden alfabetico */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button5_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> paises =<span class="br0">&#123;</span><span class="st0">&quot;mexico&quot;</span>,<span class="st0">&quot;espana&quot;</span>,<span class="st0">&quot;japon&quot;</span>,<span class="st0">&quot;china&quot;</span>,<span class="st0">&quot;argentina&quot;</span>,<span class="st0">&quot;italia&quot;</span>,<span class="st0">&quot;irlanda&quot;</span>,<span class="st0">&quot;corea&quot;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="st0">&quot;marruecos&quot;</span>,<span class="st0">&quot;egipto&quot;</span>,<span class="st0">&quot;nigeria&quot;</span><span class="br0">&#125;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var alfabetico = from a in paises orderby a select a;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">string</span> b in alfabetico<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>b<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="coMULTI">/* asi mismo con el uso de linq en nuestros obejtos o arrayas podemos obtener variables como en el siguiente metodo */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button6_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> paises =<span class="br0">&#123;</span><span class="st0">&quot;mexico&quot;</span>,<span class="st0">&quot;espana&quot;</span>,<span class="st0">&quot;japon&quot;</span>,<span class="st0">&quot;china&quot;</span>,<span class="st0">&quot;argentina&quot;</span>,<span class="st0">&quot;italia&quot;</span>,<span class="st0">&quot;irlanda&quot;</span>,<span class="st0">&quot;corea&quot;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="st0">&quot;marruecos&quot;</span>,<span class="st0">&quot;egipto&quot;</span>,<span class="st0">&quot;nigeria&quot;</span><span class="br0">&#125;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> menor = <span class="br0">&#40;</span>from r in paises where r.<span class="me1">Length</span> &lt;= <span class="nu0">5</span> select r<span class="br0">&#41;</span>.<span class="me1">Count</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>menor.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> mayores = <span class="br0">&#40;</span>from r in paises where r.<span class="me1">Length</span> &gt; <span class="nu0">5</span> select r<span class="br0">&#41;</span>.<span class="me1">Count</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>mayores.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button7_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> nombres = <span class="br0">&#123;</span> <span class="st0">&quot;carlos&quot;</span>, <span class="st0">&quot;miguel&quot;</span>, <span class="st0">&quot;oscar&quot;</span>, <span class="st0">&quot;felipe&quot;</span>, <span class="st0">&quot;luz&quot;</span>, <span class="st0">&quot;gerardo&quot;</span>, <span class="st0">&quot;anita&quot;</span>, <span class="st0">&quot;enrique&quot;</span> <span class="br0">&#125;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var yo = from t in nombres where t.<span class="me1">Contains</span><span class="br0">&#40;</span><span class="st0">&quot;i&quot;</span><span class="br0">&#41;</span> select t;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>var s in yo<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>s<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/08/25/linq-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Multithreading C#</title>
		<link>http://aztekmindz.org/2008/08/12/multithreading-c/</link>
		<comments>http://aztekmindz.org/2008/08/12/multithreading-c/#comments</comments>
		<pubDate>Tue, 12 Aug 2008 04:20:35 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=199</guid>
		<description><![CDATA[Hola de nuevo aqui les dejo una pequeña explicacion del multithreading en C# asi como un pequeno codigo de una aplicacion de consola que muestra como crear un thread y algunos metodos y propiedades basicos relacionados a la clase thread( ) de los varios beneficios del multithreading es que podemos tener varios procesos con varios [...]]]></description>
			<content:encoded><![CDATA[<p>Hola de nuevo aqui les dejo una pequeña explicacion del multithreading en C# asi como un pequeno codigo de una aplicacion de consola que muestra como crear un thread y algunos metodos y propiedades basicos relacionados a la clase thread( ) de los varios beneficios del multithreading es que podemos tener varios procesos con varios hilos ejecutandose dentro de ellos pero porque no usar nuevos threads por cada metodo que tengamos en nuestra aplicacion no podria hacer eso que todo se ejecutara mas rapido?? la respuesta es no de hecho podemos esperar todo lo contrario cuando nos escedemos en el uso de threads en nuestra aplicacion debido a que aplcaciones multithreading requieren y consumen recursos en exceso threads requieren memoria y como puedes suponer el numero de threadas esta limitado a la memoria disponible Asi mismo cada thread incurre en adicional saturacion del procesador creando muchos threads en tu aplicacion disminuye la cantidad de tiempo que tiene para executarse y aumentando el tiempo del procesador para cambiar entra la ejecucion de threads por lo que se recomienda solo usar threads en la parte de tu aplicacion que realmente se necesiten donde el usuario final de la aplicacion tenga la sensacion que es atendido por ejemplo en metodos que toman largo tiempo para su ejecucion como descargas navegaciones se puede tomar como consideracion cuando tu aplicacion necesita correr procciertos recursos de tu aplicacion son externos como acceso a databases, http networking o quiza algun archivo en la red en este caso tambien es aceptable usar multithreading en los metodos ya saben cualquier duda comuniquense con el staff!!</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;<br />
using System.<span class="me1">Text</span>;<br />
using System.<span class="me1">Threading</span>;</p>
<p>namespace ConsoleApplication1<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; class Program<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// En nuestra clase creamos dos hilos estaticos</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> Thread h1;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> Thread h2;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> Thread h3;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="coMULTI">/* asi mismo creamos dos metodos que relacionaremos a cada hilo en ejecucion<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* este primer metodo ejecuta un bucle e imprime el valor de i en pantalla */</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> public <span class="kw4">void</span> hilo1<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; <span class="nu0">100</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Hilo_1 en ejecucion &quot;</span> + <span class="st0">&quot;,&quot;</span> + i.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="coMULTI">/* En este metodo igual tenemos un bucle que imprime el valor en pantalla pero este<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* metodo no se ejecuta hasta que termine de ejecutarse el metodo previo debido al uso del<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* del metodo Join() de la clase thread*/</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> hilo2<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h1.<span class="me1">Join</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">100</span>; i &lt;= <span class="nu0">200</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Hilo_2 en ejecucion &quot;</span> + <span class="st0">&quot;,&quot;</span> + i.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="coMULTI">/* En este metodo estatico usamos el metodo sleep() de la clase thread el cual nos permite<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* poner nuestro hilo en ejecucion en pausa por cierto tiempo especificado en milisegundos<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* este bucle pone un resultado en pantalla cada 5 segundos debido al metodo sleep()*/</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> hilo3<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> estadodelhilo = Thread.<span class="me1">CurrentThread</span>.<span class="me1">ThreadState</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt;= <span class="nu0">5</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Hilo_3 en ejecucion &quot;</span> + <span class="st0">&quot;,&quot;</span> + i.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;thread &quot;</span> + estadodelhilo<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Thread.<span class="me1">Sleep</span><span class="br0">&#40;</span><span class="nu0">5000</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="coMULTI">/* En nuestro metodo main instanciamos nuestros metodos y los ponemos en ejecucion<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* asi mismo con el metodo start() los ponemos en ejecucion notese que al instanciar cada hilo<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* debemos de agregar cada metodo que se ejecutara con ese hilo*/</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> Main<span class="br0">&#40;</span><span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> args<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">ForegroundColor</span> = ConsoleColor.<span class="me1">Red</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;Multithreading en C# por xxxnocturnoxxx&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="st0">&quot;[AztekMindz.org]&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">WriteLine</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Thread.<span class="me1">Sleep</span><span class="br0">&#40;</span><span class="nu0">5000</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console.<span class="me1">ResetColor</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Aqui instanciamos nuestros dos objetos de la clase thread</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h1 = new Thread<span class="br0">&#40;</span>new ThreadStart<span class="br0">&#40;</span>hilo1<span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h2 = new Thread<span class="br0">&#40;</span>new ThreadStart<span class="br0">&#40;</span>hilo2<span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h3 = new Thread<span class="br0">&#40;</span>new ThreadStart<span class="br0">&#40;</span>hilo3<span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Podemos agregarle prioridades de ejecucion a nuestros threads (Hilos)</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h1.<span class="me1">Priority</span> = ThreadPriority.<span class="me1">Normal</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h2.<span class="me1">Priority</span> = ThreadPriority.<span class="me1">AboveNormal</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h3.<span class="me1">Priority</span> = ThreadPriority.<span class="me1">BelowNormal</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// Algunos de los metodos y propiedades de la clase thread</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> estado1 = h1.<span class="me1">ThreadState</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> nombredelproceso = h3.<span class="me1">Name</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">//Aqui ponemos nuestros objetos en ejecucion con el metodo start() de la clase thread</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h1.<span class="me1">Start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h2.<span class="me1">Start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h3.<span class="me1">Start</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/08/12/multithreading-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SerialKiller V1.0 C#</title>
		<link>http://aztekmindz.org/2008/08/10/serialkiller-v-10/</link>
		<comments>http://aztekmindz.org/2008/08/10/serialkiller-v-10/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 23:38:43 +0000</pubDate>
		<dc:creator>carlos hinojosa</dc:creator>
				<category><![CDATA[CSHARP]]></category>
		<category><![CDATA[Herramientas]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=187</guid>
		<description><![CDATA[Hola Aqui les dejo una aplicacion llamada Serial Killer que su funcion basica es buscar seriales para programas esta programado 100% en c# y demuestra el uso de las clases Webbrowser() , HtmlDocument() , WebClient() y HtmlElement Etc El programa esta 100% funcional aunque tiene pequeños bugs pero como sea ahi les dejo el codigo [...]]]></description>
			<content:encoded><![CDATA[<p>Hola Aqui les dejo una aplicacion llamada Serial Killer que su funcion basica es buscar seriales para programas esta programado 100% en c# y demuestra el uso de las clases Webbrowser() , HtmlDocument() , WebClient() y HtmlElement Etc El programa esta 100% funcional aunque tiene pequeños bugs pero como sea ahi les dejo el codigo para que lo analizen asi como el programita para que lo descarguen &#8212;&#8211;&gt;<a href="http://www.aztekmindz.org/wp-content/uploads/2008/08/serialkiller.rar"><span style="color: #ff0000;">SerialKiller V 1.0 </span></a>&lt;&#8212;&#8212;-</p>
<div class="dean_ch" style="white-space: wrap;">
using System;<br />
using System.<span class="me1">Net</span>;<br />
using System.<span class="me1">Windows</span>.<span class="me1">Forms</span>;<br />
using System.<span class="me1">Collections</span>.<span class="me1">Generic</span>;</p>
<p>namespace SerialKiller<br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; public partial class Form1 : Form<br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; public Form1<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; InitializeComponent<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="co1">// Aqui creamos e instanciamos los objetos que necesitamos</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; CheckedListBox checkedListBox2 = new CheckedListBox<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span><span class="br0">&#91;</span><span class="br0">&#93;</span> urlarray;<br />
&nbsp; &nbsp; &nbsp; &nbsp; WebBrowser<span class="br0">&#91;</span><span class="br0">&#93;</span> mywebbrowsers;<br />
&nbsp; &nbsp; &nbsp; &nbsp; HtmlDocument myhtmldocument;<br />
&nbsp; &nbsp; &nbsp; &nbsp; WebClient mywebclient = new WebClient<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; WebBrowser mywebbrowser1 = new WebBrowser<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; Uri myuri = new Uri<span class="br0">&#40;</span><span class="st0">&quot;http://youserials.com/najdem.php?q=&quot;</span><span class="br0">&#41;</span>;</p>
<p><span class="co1">// En este evento guardamos y nos aseguramos que haya un criterio de busqueda</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; try<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">string</span> criterio = textBox1.<span class="me1">Text</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>criterio == <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span><span class="st0">&quot;Ingresa terminos de busqueda&quot;</span>, <span class="st0">&quot;Aztekmindz.org&quot;</span>, MessageBoxButtons.<span class="me1">OK</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mywebbrowser1.<span class="me1">Navigate</span><span class="br0">&#40;</span>myuri + criterio<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button1.<span class="me1">Enabled</span> = <span class="kw2">false</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button2.<span class="me1">Enabled</span> = <span class="kw2">true</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; catch <span class="br0">&#40;</span>Exception a<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>a.<span class="me1">Message</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="co1">// Aqui esta la creacion del evento que se ejecutara cuando nuestro webbrowser haya navegado</span><br />
<span class="co1">// y cargado completamente el documento web</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> Form1_Load<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mywebbrowser1.<span class="me1">Navigating</span> += new WebBrowserNavigatingEventHandler<span class="br0">&#40;</span>mywebbrowser1_Navigating<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mywebbrowser1.<span class="me1">DocumentCompleted</span> += new WebBrowserDocumentCompletedEventHandler<span class="br0">&#40;</span>mywebbrowser1_DocumentCompleted<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button2.<span class="me1">Enabled</span> = <span class="kw2">false</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button3.<span class="me1">Enabled</span> = <span class="kw2">false</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="co1">// Aqui hacemos que nuestra progress bar avance de acuerdo al progreso que lleva el</span><br />
<span class="co1">// webbrowser cargando el documento</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">void</span> mywebbrowser1_Navigating<span class="br0">&#40;</span>object sender, WebBrowserNavigatingEventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; toolStripProgressBar1.<span class="me1">PerformStep</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="co1">// Aqui el documento que tenemos cargado en el webbrowser lo pasamos a un HtmlDocument()</span><br />
<span class="co1">// y usamos un foreach para buscar dentro terminos especificos en este caso links</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> mywebbrowser1_DocumentCompleted<span class="br0">&#40;</span>object sender, WebBrowserDocumentCompletedEventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button1.<span class="me1">Enabled</span> = <span class="kw2">true</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; toolStripProgressBar1.<span class="me1">Value</span> = toolStripProgressBar1.<span class="me1">Maximum</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; textBox1.<span class="me1">Text</span> = <span class="st0">&quot;&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; myhtmldocument = mywebbrowser1.<span class="me1">Document</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>HtmlElement link in myhtmldocument.<span class="me1">Links</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>link.<span class="me1">OuterHtml</span>.<span class="me1">Contains</span><span class="br0">&#40;</span><span class="st0">&quot;nasiel.php&quot;</span><span class="br0">&#41;</span><br />
<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; checkedListBox1.<span class="me1">Items</span>.<span class="me1">Add</span><span class="br0">&#40;</span>link.<span class="me1">InnerText</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>HtmlElement link2 in myhtmldocument.<span class="me1">Links</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>link2.<span class="me1">OuterHtml</span>.<span class="me1">Contains</span><span class="br0">&#40;</span><span class="st0">&quot;nasiel.php&quot;</span><span class="br0">&#41;</span><br />
<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; checkedListBox2.<span class="me1">Items</span>.<span class="me1">Add</span><span class="br0">&#40;</span>link2.<span class="me1">GetAttribute</span><span class="br0">&#40;</span><span class="st0">&quot;href&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; toolStripProgressBar1.<span class="me1">Value</span> = <span class="nu0">0</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button2_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">int</span> indexChecked in checkedListBox1.<span class="me1">CheckedIndices</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; checkedListBox2.<span class="me1">SetItemChecked</span><span class="br0">&#40;</span>indexChecked, <span class="kw2">true</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> j = <span class="nu0">0</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; urlarray = new <span class="kw4">string</span><span class="br0">&#91;</span>checkedListBox2.<span class="me1">CheckedItems</span>.<span class="me1">Count</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span><span class="kw4">string</span> itemChecked in checkedListBox2.<span class="me1">CheckedItems</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; urlarray<span class="br0">&#91;</span>j<span class="br0">&#93;</span> = itemChecked.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; j++;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mywebbrowsers = new WebBrowser<span class="br0">&#91;</span>urlarray.<span class="me1">Length</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; label1.<span class="me1">Text</span> = <span class="st0">&quot;Seleccionaste &quot;</span> + mywebbrowsers.<span class="me1">Length</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span> + <span class="st0">&quot; Seriales para Descarga&quot;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; button3.<span class="me1">Enabled</span> = <span class="kw2">true</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> salirToolStripMenuItem1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span><span class="st0">&quot;AztekMindz.org&quot;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Application.<span class="me1">Exit</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> reiniciarToolStripMenuItem1_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Application.<span class="me1">Restart</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> button3_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; urlarray.<span class="me1">Length</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; finalurl<span class="br0">&#40;</span>urlarray<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; toolStripProgressBar1.<span class="me1">Maximum</span>; i++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; toolStripProgressBar1.<span class="me1">Value</span> = i;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> WebBrowser miw = new WebBrowser<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; public <span class="kw4">static</span> <span class="kw4">void</span> finalurl<span class="br0">&#40;</span><span class="kw4">string</span> url<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miw.<span class="me1">Navigate</span><span class="br0">&#40;</span>url<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; miw.<span class="me1">DocumentCompleted</span> += new WebBrowserDocumentCompletedEventHandler<span class="br0">&#40;</span>miw_DocumentCompleted<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">void</span> miw_DocumentCompleted<span class="br0">&#40;</span>object sender, WebBrowserDocumentCompletedEventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; HtmlDocument midoc = miw.<span class="me1">Document</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach <span class="br0">&#40;</span>HtmlElement paras in midoc.<span class="me1">GetElementsByTagName</span><span class="br0">&#40;</span><span class="st0">&quot;DIV&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>paras.<span class="me1">InnerHtml</span>.<span class="me1">Contains</span><span class="br0">&#40;</span><span class="st0">&quot;S/N:&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; MessageBox.<span class="me1">Show</span><span class="br0">&#40;</span>paras.<span class="me1">OuterText</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> nuevaBusquedaToolStripMenuItem_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Application.<span class="me1">Restart</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; private <span class="kw4">void</span> acercaDeToolStripMenuItem_Click<span class="br0">&#40;</span>object sender, EventArgs e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; splash sp = new splash<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sp.<span class="me1">ShowDialog</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://aztekmindz.org/2008/08/10/serialkiller-v-10/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

