<?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"
	>

<channel>
	<title>Aztek Mindz</title>
	<atom:link href="http://www.aztekmindz.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.aztekmindz.org</link>
	<description>Inseguridad informatica y Laboratorio virico</description>
	<pubDate>Tue, 02 Dec 2008 10:16:11 +0000</pubDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
			<item>
		<title>ExecuteScalar(), ExecuteReader(),  en C#</title>
		<link>http://www.aztekmindz.org/2008/11/17/executescalar-executereader-en-c/</link>
		<comments>http://www.aztekmindz.org/2008/11/17/executescalar-executereader-en-c/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 04:26:47 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/11/17/executescalar-executereader-en-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Magic Blue Hack - Controla Remotamente Celulares con Bluetooth</title>
		<link>http://www.aztekmindz.org/2008/10/05/magic-blue-hack-controla-remotamente-celulares-con-bluetooth/</link>
		<comments>http://www.aztekmindz.org/2008/10/05/magic-blue-hack-controla-remotamente-celulares-con-bluetooth/#comments</comments>
		<pubDate>Sun, 05 Oct 2008 17:26:52 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
		
		<category><![CDATA[Herramientas]]></category>

		<category><![CDATA[Inseguridad]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=253</guid>
		<description><![CDATA[Magic Blue Hack es una herramienta programada en java que hace uso de bluetooth para controlar un telefono celular de forma remota, pide una confirmacion la primera vez que se desea controlar el telefono objetivo y despues uno es capaz de realizar distintos tipos de acciones como realizar llamadas, leer mensajes, ajenda, ver fotografias, etc..
Es [...]]]></description>
			<content:encoded><![CDATA[<p>Magic Blue Hack es una herramienta programada en java que hace uso de bluetooth para controlar un telefono celular de forma remota, pide una confirmacion la primera vez que se desea controlar el telefono objetivo y despues uno es capaz de realizar distintos tipos de acciones como realizar llamadas, leer mensajes, ajenda, ver fotografias, etc..</p>
<p>Es bastante similar al Bluetooth Hack a diferencia que este soporta mucho mas modelos y marcas.</p>
<p>Aqui les dejo una lista bastante extensa de todos los modelos que pueden ser controlados haciendo uso de Magic Blue Hack</p>
<p><strong><span style="color: #ff0000;">Alcatel:</span></strong> One Touch 557, One Touch 557a, One Touch 735, One Touch 756, One Touch C550, One Touch C552, One Touch C552a, One Touch C750, One Touch S853<br />
<span style="color: #ff0000;"><strong>Asus:</strong></span> P525<br />
<strong><span style="color: #ff0000;">Audiovox:</span></strong> SMT 5600<br />
<strong><span style="color: #ff0000;">BenQ:</span></strong> A520, C30, EF51, P50<br />
<strong><span style="color: #ff0000;">BenQ-Siemens:</span></strong> CL71, E61, S81, S88<br />
<strong><span style="color: #ff0000;">BlackBerry:</span></strong> 6220, 6230, 6280, 6720, 7100, 7100i, 7130, 7130e, 7210, 7230, 7250, 7280, 7290, 7510, 7520, 7730, 8100, 8130, 8300, 8310, 8320, 8700, 8703e, 8707, 8800, 8820, 8830<br />
<strong><span style="color: #ff0000;">CECT:</span></strong> A1000<br />
<strong><span style="color: #ff0000;">Cingular:</span></strong> Cingular 2125, Cingular BlackJack<br />
<strong><span style="color: #ff0000;">Dopod:</span></strong> Dopod 515, Dopod 557w, Dopod 565, Dopod 575, Dopod 585, Dopod 586w, Dopod 595, Dopod C720W<br />
<strong><span style="color: #ff0000;">HP:</span></strong> iPAQ 510 Mobile Messenger<br />
<strong><span style="color: #ff0000;">HTC:</span></strong> HTC MTeoR, HTC S310, HTC S620, HTC S650, HTC S710, P3400, P3450<br />
<strong><span style="color: #ff0000;">Huawei: </span></strong>U526, U626<br />
<strong><span style="color: #ff0000;">i-mate:</span></strong> i-mate Smartphone2, i-mate SP Jas, i-mate SP3, i-mate SP3i, i-mate SP5, i-mate SP5m, i-mate SPL<br />
<strong><span style="color: #ff0000;">I-mobile:</span></strong> 510<br />
<strong><span style="color: #ff0000;">Lenovo:</span></strong> V800<br />
<strong><span style="color: #ff0000;">LG: </span></strong>B2000, B2050, B2070, B2100, B2150, C1100, C1150, C2000, C2500, C2600, C3100, C3300, C3400, CG225, CU400, CU500, F2400, G1600, G1610, G4015, G7100, KE770, KE800, KE820, KE970, KG110, KG195, KG200, KG220, KG225, KG240, KG245, KG290, KG300, KG320, KG800, LG KE500, LG-KE600, LG550, LX550, LX570, M4410, MG100a, MG105, MG220, MX510, P7200, S5200, T5100, TU500, U8210, U8290, U8330, U8500, VX9400, VX9900<br />
<strong><span style="color: #ff0000;">LG Electronics:</span></strong> LG-B2060<br />
<strong><span style="color: #ff0000;">Mitac:</span></strong> Mio 8390, Mio 8860, Mio 8870<br />
<strong><span style="color: #ff0000;">Motorola:</span></strong> A1200, A760, A768, A780, A835, C155, C168, C257, C261, C290, C350, C350M, C380, C385, C390, C450, C550, C650, C975, E1000, E1070, E365, E380, E398, E398B, E398i, E550, E680, E680i, E770, E770-Vodafone, E790, E815, i830, i850, i930, K1, KZRK K1, L2, L6, L6i, L7-Vodafone, L71, Motorola Q, Motorola Q Plus, MPX220, PEBL U6, Razr V3, RAZR V3a, RAZR V3m, Razr V3x, RAZR V3xx, RAZR V3xxv, RAZR V6, RAZR2 V8, RAZR2 V9, RAZR2 V9m, ROKR E1, ROKR E2, ROKR E6, SLVR L7, SLVR L7e, SLVR L7i, SLVR L9, T720, V1050, V1075, V171, V177, V180, V186, V188, V190, V191, V195, V197, V220, V235, V300, V303, V360, V360-Vodafone, V365, V3c, V3i, V3m, V3r, V3t, V3v, V3x-Vodafone, V400, V500, V505, V525, V525M, V535, V545, V547, V550, V551, V555, V557, V600, V600i, V620, V635, V690, V80, V975, V980, V980M, W220, W315, W375, W490, W510, Z3<br />
<strong><span style="color: #ff0000;">NEC:</span></strong> N600<br />
<strong><span style="color: #ff0000;">Nokia:</span></strong> 2355, 2610, 2626, 2630, 2650, 2760, 2855i, 2865, 2865i, 3100, 3105, 3110c, 3120, 3125, 3152, 3155, 3155i, 3200, 3220, 3230, 3250, 3300, 3410, 3500, 3510, 3510i, 3530, 3586i, 3587, 3595, 3600, 3620, 3650, 3660, 5070, 5100, 5140, 5140i, 5200, 5300, 5310 XpressMusic, 5500, 6010, 6015, 6020, 6021, 6030, 6060, 6060v, 6061, 6070, 6080, 6085, 6086, 6100, 6101, 6102, 6102i, 6103, 6108, 6111, 6125, 6126, 6131, 6133, 6151, 6155, 6165, 6165i, 6170, 6200, 6220, 6225, 6230, 6230i, 6233, 6234, 6235, 6235i, 6255, 6255i, 6260, 6265, 6265i, 6267, 6270, 6275i, 6280, 6288, 6300, 6310i, 6500c, 6500s, 6555, 6585, 6600, 6610, 6610i, 6620, 6630, 6650, 6651, 6670, 6680, 6681, 6682, 6708, 6800, 6810, 6820, 6822, 7200, 7210, 7250, 7250i, 7260, 7270, 7360, 7370, 7373, 7390, 7500, 7600, 7610, 7650, 7710, 8600 Luna, 8800, 8800 Sirocco, 8910i, 9210, 9290, 9300, 9500, E50, E60, E61, E61i, E62, E65, E70, E90, N-Gage, N-Gage QD, N70, N70-1, N71, N72, N73, N75, N77, N80-1, N90, N91, N92, N93, N93i, N95<br />
<strong><span style="color: #ff0000;">O2:</span></strong> Ice<br />
<strong><span style="color: #ff0000;">Orange:</span></strong> SPV, SPV C100, SPV C500, SPV C550, SPV C600, SPV C700, SPV e100, SPV E200<br />
<strong><span style="color: #ff0000;">Panasonic:</span></strong> A210, SC3, VS2, VS3, VS6, X200P, X400, X400P, X500, X70<br />
<strong><span style="color: #ff0000;">Pantech:</span></strong> PG-1400, PG-1410, PG-C300<br />
<strong><span style="color: #ff0000;">Philips: </span></strong>568, 588, 755, 756, 766, 768, 960, S890, S900<br />
<strong><span style="color: #ff0000;">Qtek:</span></strong> 8100, 8500<br />
<strong><span style="color: #ff0000;">QTEK:</span></strong> QTEK 7070, QTEK 8010, QTEK 8020, QTEK 8080, QTEK 8100, QTEK 8300, QTEK 8310, QTEK 8600<br />
<strong><span style="color: #ff0000;">RoverPC:</span></strong> M1<br />
<strong><span style="color: #ff0000;">Sagem:</span></strong> MY 302X, MY 301X, MY 400V, MY 400X, MY 401C, MY 401X, MY 401Z, MY 501C, MY 501X, MY 600v, MY 600x, MY 700X, MY C4-2, MY C5-2, MY C5-2 Vodafone, MY V-55, MY V-56, MY V-65, MY V-75, MY W-7, MY X-4, MY X-5-2T, MY X-6, MY X-7, MY X-8, MY X5-2, MY X5-2M, MY X6-2, MY Z-5, my411X, myX5-2v, Sagem myS-7<br />
<strong><span style="color: #ff0000;">Samsung:</span></strong> A717, i300, i320, i320N, SCH A870, SGH A701, SGH A707, SGH C100, SGH C100G, SGH C130, SGH C140, SGH C160, SGH C170, SGH C200, SGH C207, SGH C207L, SGH C210, SGH C230, SGH C260, SGH C300, SGH C400, SGH C406, SGH C417, SGH D407, SGH D410, SGH D500, SGH D500C, SGH D500E, SGH D510, SGH D520, SGH D600, SGH D600E, SGH D720, SGH D800, SGH D807, SGH D820, SGH D830, SGH D836, SGH D840, SGH D900, SGH D900i, SGH E200, SGH E250, SGH E300, SGH E310, SGH E310C, SGH E315, SGH E316, SGH E330, SGH E330N, SGH E340, SGH E340E, SGH E350, SGH E350E, SGH E360, SGH E370, SGH E376, SGH E390, SGH E420, SGH E490, SGH E500, SGH E530, SGH E568, SGH E570, SGH E600, SGH E620, SGH E630, SGH E630C, SGH E690, SGH E700, SGH E710, SGH E715, SGH E720, SGH E728, SGH E730, SGH E736, SGH E760, SGH E780, SGH E800, SGH E808, SGH E810, SGH E820, SGH E830, SGH E840, SGH E870, SGH E878, SGH E890, SGH E898, SGH E900, SGH G600, SGH i300, SGH I320, SGH I607, SGH J600, SGH L760, SGH M600, SGH P200, SGH P300, SGH P310, SGH P400, SGH P510, SGH P777, SGH P850, SGH P900, SGH P906, SGH P910, SGH P920, SGH S300, SGH S300M, SGH S500, SGH T209, SGH T219, SGH T309, SGH T319, SGH T329, SGH T509, SGH T509S, SGH T519, SGH T609, SGH T619, SGH T629, SGH T729, SGH T809, SGH U600, SGH U700, SGH V200, SGH X100, SGH X100A, SGH X105, SGH X120, SGH X140, SGH X160, SGH X200, SGH X210, SGH X300, SGH X430, SGH X450, SGH X460, SGH X480, SGH X486, SGH X490, SGH X495, SGH X500, SGH X506, SGH X507, SGH X510, SGH X520, SGH X530, SGH X540, SGH X600, SGH X608, SGH X610, SGH X620, SGH X620C, SGH X630, SGH X636, SGH X640, SGH X640C, SGH X648, SGH X650, SGH X660, SGH X670, SGH X680, SGH X686, SGH X700, SGH X820, SGH X830, SGH Z107, SGH Z140, SGH Z170, SGH Z230, SGH Z240, SGH Z300, SGH Z370, SGH Z400, SGH Z400V, SGH Z500, SGH Z510, SGH Z530, SGH Z540, SGH Z560, SGH Z630, SGH Z720, SGH ZV10, SGH ZV40, SGH ZV50, SGH-i607, SPH A580, SPH A640, SPH A660, SPH A680, SPH A740, SPH A900, SPH A900P, SPH A920, SPH A940, SPH A960, SPH M500, SPH M510, SPH M610, SPH M620, Z130, Z150<br />
<strong><span style="color: #ff0000;">Sanyo:</span></strong> S750, SCP-6600<br />
<strong><span style="color: #ff0000;">Sendo:</span></strong> X<br />
<strong><span style="color: #ff0000;">Sharp:</span></strong> 770SH, GX-L15, GX10, GX10i, GX15, GX17, GX20, GX22, GX25, GX29, GX30, GX30i, GXT15, TM100, TM150<br />
<strong><span style="color: #ff0000;">Siemens:</span></strong> A31, A60, A65, A75, AL21, AP75, AX72, AX75, AX76, C55, C60, C62, C65, C65-Vodafone, C66, C72, C75, CF62, CF75, CF76, CX65, CX70, CX75, EF81, M50, M55, M56, M65, M75, MC60, ME75, MT50, S55, S57, S65, S75, SK65, SL42, SL45, SL55, SL65, SL75, ST60, SX1<br />
<strong><span style="color: #ff0000;">Sony-Ericsson:</span></strong> D750, D750i, F500i, J200i, J210i, J220i, J230i, J300a, J300i, K200i, K300, K300a, K300i, K310, K310a, K310i, K320i, K500i, K508, K508c, K508i, K510a, K510i, K530i, K550i, K600, K600i, K608i, K610, K610i, K618i, K700, K700c, K700i, K750, K750i, K790a, K790i, K800i, K800iv, K810i, K850i, M600i, P1i, P800, P900, P910, P910a, P910i, P990i, S500i, S700, S700i, S710a, T226, T230, T250i, T290a, T290i, T610, T616, T630, T637, T650i, T68, V600, V600i, V630i, W200a, W200i, W300, W300i, W550c, W550i, W580i, W600c, W600i, W610i, W660i, W700i, W710i, W800c, W800i, W810i, W810iv, W830i, W850i, W850iv, W880i, W900i, W910i, W950i, Z1010, Z200, Z300i, Z310i, Z310iv, Z500, Z500a, Z520a, Z520i, Z530i, Z550a, Z550i, Z558i, Z600, Z610i, Z710i, Z800<br />
<span style="color: #ff0000;"><strong>T-Mobile:</strong></span> MDA Dash, MDA Mail, SDA, SDA (US name), SDA II, SDA Music<br />
<strong><span style="color: #ff0000;">Tatung:</span></strong> M1<br />
<strong><span style="color: #ff0000;">VK Mobile:</span></strong> VK4000<br />
<strong><span style="color: #ff0000;">Vodafone:</span></strong> v1210, v1240, VDA II, VDA IV</p>
<div class="captionfull"><img src="http://www.aztekmindz.org/wp-content/uploads/2008/10/magicbluehackgi0.jpg" alt="" /></div>
<p><a title="Descarga Magic Blue Hack" href="http://www.aztekmindz.org/wp-content/uploads/2008/10/mbh-wwwaztekmindzorg.rar"><span style="color: #ff0000;">DESCARGAR MAGIC BLUE HACK</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aztekmindz.org/2008/10/05/magic-blue-hack-controla-remotamente-celulares-con-bluetooth/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Webservices C#</title>
		<link>http://www.aztekmindz.org/2008/10/01/webservices-c/</link>
		<comments>http://www.aztekmindz.org/2008/10/01/webservices-c/#comments</comments>
		<pubDate>Wed, 01 Oct 2008 21:42:20 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/10/01/webservices-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Generics C#</title>
		<link>http://www.aztekmindz.org/2008/09/22/generics-c/</link>
		<comments>http://www.aztekmindz.org/2008/09/22/generics-c/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 19:15:51 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/09/22/generics-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Soy parte de GNU/Linux?</title>
		<link>http://www.aztekmindz.org/2008/09/10/soy-parte-de-gnulinux/</link>
		<comments>http://www.aztekmindz.org/2008/09/10/soy-parte-de-gnulinux/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 20:53:32 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
		
		<category><![CDATA[GNU/Linux]]></category>

		<category><![CDATA[Papers]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=212</guid>
		<description><![CDATA[Texto escrito por mi donde expongo la necesidad de explicar a grandes rasgos el movimiento GNU y la fusión final GNU/Linux, muy recomendable para todos los nuevos usuarios que incursionan en GNU/Linux y no saben que  forman parte de toda una filosofia y una forma de vida, cometiendo el error de referirse al sistema [...]]]></description>
			<content:encoded><![CDATA[<p>Texto escrito por mi donde expongo la necesidad de explicar a grandes rasgos el movimiento GNU y la fusión final GNU/Linux, muy recomendable para todos los nuevos usuarios que incursionan en GNU/Linux y no saben que  forman parte de toda una filosofia y una forma de vida, cometiendo el error de referirse al sistema operativo y al movimiento únicamente como &#8220;Linux&#8221;.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="750" height="800" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.aztekmindz.org/wp-content/uploads/2008/09/spdgl.swf" /><embed type="application/x-shockwave-flash" width="750" height="800" src="http://www.aztekmindz.org/wp-content/uploads/2008/09/spdgl.swf"></embed></object></p>
<p><a title="Descargar Documento en PDF" href="http://www.aztekmindz.org/wp-content/uploads/2008/09/spdgl.pdf"><span style="color: #ff0000;">Descarga este documento en PDF</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aztekmindz.org/2008/09/10/soy-parte-de-gnulinux/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Linq C#</title>
		<link>http://www.aztekmindz.org/2008/08/25/linq-c/</link>
		<comments>http://www.aztekmindz.org/2008/08/25/linq-c/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 08:34:33 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/08/25/linq-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Multithreading C#</title>
		<link>http://www.aztekmindz.org/2008/08/12/multithreading-c/</link>
		<comments>http://www.aztekmindz.org/2008/08/12/multithreading-c/#comments</comments>
		<pubDate>Tue, 12 Aug 2008 04:20:35 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/08/12/multithreading-c/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SerialKiller V1.0 C#</title>
		<link>http://www.aztekmindz.org/2008/08/10/serialkiller-v-10/</link>
		<comments>http://www.aztekmindz.org/2008/08/10/serialkiller-v-10/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 23:38:43 +0000</pubDate>
		<dc:creator>rottingbyte</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://www.aztekmindz.org/2008/08/10/serialkiller-v-10/feed/</wfw:commentRss>
		</item>
		<item>
		<title>HideBatch NTFS ADS Ocultacion Avanzada de Archivos</title>
		<link>http://www.aztekmindz.org/2008/08/09/hidebatch-ntfs-ads-ocultacion-avanzada-de-archivos/</link>
		<comments>http://www.aztekmindz.org/2008/08/09/hidebatch-ntfs-ads-ocultacion-avanzada-de-archivos/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 01:25:45 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
		
		<category><![CDATA[Inseguridad]]></category>

		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=177</guid>
		<description><![CDATA[Todos los Windows NT nos ofrecen la posibilidad de instalar el S.O bajo un sistema de ficheros llamado NTFS, que supuestamente es más “seguro”  que Fat32, porque nos da la oportunidad de crear políticas de acceso a nuestros ficheros, este sistema cuenta con una capacidad no documentada que nos permite usar los ADS (alternate [...]]]></description>
			<content:encoded><![CDATA[<p>Todos los Windows NT nos ofrecen la posibilidad de instalar el S.O bajo un sistema de ficheros llamado NTFS, que supuestamente es más “seguro”  que Fat32, porque nos da la oportunidad de crear políticas de acceso a nuestros ficheros, este sistema cuenta con una capacidad no documentada que nos permite usar los ADS (alternate dada stream), esta capacidad nos permite asociar información a un archivo o a un directorio, y existe para crear compatibilidad con el HFS (sistema de archivos de macintosh hierarchical file system), cuando asociamos archivo 1 a un archivo 2, permanece invariable, pero contiene el archivo 1 en esa seccion no documentada que en realidad esta apuntando a archivo2, lo que nos da la sensacion de &#8220;meter&#8221; todo un archivo dentro de otro.</p>
<p>¿Pero que beneficios nos trae?<br />
Bueno entre varias cosas podemos ocultar un archivo de 100MB dentro de un txt de 1KB si así lo quisiéramos, o en dado caso podríamos incluso ocultar algún tipo de backdoor o malware dentro de un proceso critico del sistema.</p>
<p>Para seguir las practicas he realizado un pequeño batch script que nos automatiza el proceso de ocultación.</p>
<div class="captionfull"><img src="http://www.aztekmindz.org/wp-content/uploads/2008/08/hb.gif" alt="HideBatch" /></div>
<p>hidebatch.bat</p>
<div class="dean_ch" style="white-space: wrap;">@<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> off<br />
color C<br />
cls<br />
title HideBatch NTFS ADS by Octalh <span class="br0">&#91;</span> www.aztekmindz.org <span class="br0">&#93;</span><br />
<a href="http://www.ss64.com/nt/if.html"><span class="kw1">if</span></a> &quot;%<span class="re2"><span class="nu0">1</span></span>&quot; == &quot;&quot; &nbsp; &nbsp;<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">portada</span><br />
<a href="http://www.ss64.com/nt/if.html"><span class="kw1">if</span></a> &quot;%<span class="re2"><span class="nu0">1</span></span>&quot; == &quot;-h&quot; &nbsp;<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">ocultar</span><br />
<a href="http://www.ss64.com/nt/if.html"><span class="kw1">if</span></a> &quot;%<span class="re2"><span class="nu0">1</span></span>&quot; == &quot;-u&quot; &nbsp;<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">mostrar</span><br />
<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">fin</span><br />
:<span class="re0">portada</span><br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; www.aztekmindz.org :<span class="re0">: octalh@gmail.com</span><br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; &nbsp;_ &nbsp; &nbsp; _ &nbsp; &nbsp; _ &nbsp; &nbsp; &nbsp; _ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; ^| ^| &nbsp; ^<span class="br0">&#40;</span>_^<span class="br0">&#41;</span> &nbsp; ^| ^| &nbsp; &nbsp; ^| ^| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_ &nbsp; &nbsp; &nbsp; ^| ^|<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; ^| ^|__ &nbsp;_ &nbsp;__^| ^|_____^| ^|__ &nbsp;_____ _^| ^|_ ____^| ^|__<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; ^| &nbsp;_ \^| ^|/ _ &nbsp;^| ___ ^| &nbsp;_ \^<span class="br0">&#40;</span>____ ^<span class="br0">&#40;</span>_ &nbsp; _^<span class="br0">&#41;</span> ___^<span class="br0">&#41;</span> &nbsp;_ \<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; ^| ^| ^| ^| ^<span class="br0">&#40;</span> ^<span class="br0">&#40;</span>_^| ^| ____^| ^|_^<span class="br0">&#41;</span> ^<span class="br0">&#41;</span> ___ ^| ^| ^|^<span class="br0">&#40;</span> ^<span class="br0">&#40;</span>___^| ^| ^| ^|<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; ^|_^| ^|_^|_^|\____^|_____^<span class="br0">&#41;</span>____/\_____^| &nbsp;\__^<span class="br0">&#41;</span>____^<span class="br0">&#41;</span>_^| ^|_^|<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; - &nbsp;Advanced Hide ^| Unhide NTFS File System &nbsp;-<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp; &nbsp; &nbsp; - &nbsp;By Octalh -<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;USO: hidebatch <span class="br0">&#91;</span>-h<span class="br0">&#93;</span> / <span class="br0">&#91;</span>-u<span class="br0">&#93;</span> <span class="br0">&#91;</span>Archivo <span class="nu0">1</span><span class="br0">&#93;</span> <span class="br0">&#91;</span>Archivo <span class="nu0">2</span><span class="br0">&#93;</span><br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;<span class="br0">&#123;</span> -h <span class="br0">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; Oculta un archivo dentro de otro<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;<span class="br0">&#123;</span> -u <span class="br0">&#125;</span> &nbsp; &nbsp; &nbsp; &nbsp; Ejecuta un archivo oculto<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;<span class="br0">&#123;</span> Archivo <span class="nu0">1</span> <span class="br0">&#125;</span> &nbsp;Archivo a ocultar<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;<span class="br0">&#123;</span> Archivo <span class="nu0">2</span> <span class="br0">&#125;</span> &nbsp;Archivo donde se ocultara Archivo <span class="nu0">1</span><br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;Ejemplo:<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;Ocultar archivo: &nbsp; &nbsp; &nbsp; &nbsp; hidebatch -h secreto.txt cancion.mp3<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a> &nbsp;Ejecutar archivo oculto: hidebatch -u secreto.txt cancion.mp3<br />
<a href="http://www.ss64.com/nt/echo.html"><span class="kw3">echo</span></a>.<br />
pause&gt;nul<br />
<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">fin</span><br />
:<span class="re0">ocultar</span><br />
type %<span class="re2"><span class="nu0">2</span></span> &gt;%<span class="re2"><span class="nu0">3</span></span>:%<span class="re2"><span class="nu0">2</span></span><br />
<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">fin</span><br />
:<span class="re0">mostrar</span><br />
Start .\%<span class="re2"><span class="nu0">3</span></span>:%<span class="re2"><span class="nu0">2</span></span><br />
<a href="http://www.ss64.com/nt/goto.html"><span class="kw1">goto</span></a> <span class="re0">fin</span><br />
:<span class="re0">fin</span></div>
<p>.</p>
<p>Suponiendo que queremos ocultar servidor.exe dentro de foto_xxx.jpg<br />
Solo tenemos que ejecutar HideBatch de la siguiente manera:</p>
<div class="dean_ch" style="white-space: wrap;">hidebatch.bat -h servidor.exe foto_xxx.jpg</div>
<p>Ahora podemos proceder a eliminar servidor.exe pues ya se encuentra oculto en foto_xxx.jpg</p>
<div class="dean_ch" style="white-space: wrap;">del servidor.exe</div>
<p>Y ahora para ejecutar servidor.exe hacemos lo siguiente.</p>
<div class="dean_ch" style="white-space: wrap;">hidebatch.bat -u servidor.exe foto_xxx.jpg</div>
<p>Con esto damos por terminada esta breve explicación de los ADS y claro esperemos que ahora tengan mas conciencia sobre lo indefenso que puede estar un administrador promedio frente a este tipo de ataques.</p>
<p>Ya sabes como siempre cualquier duda un E-mail</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aztekmindz.org/2008/08/09/hidebatch-ntfs-ads-ocultacion-avanzada-de-archivos/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Detectar Maquina Virtual VM en C++</title>
		<link>http://www.aztekmindz.org/2008/08/04/detectar-maquina-virtual-vm-en-c/</link>
		<comments>http://www.aztekmindz.org/2008/08/04/detectar-maquina-virtual-vm-en-c/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 09:26:11 +0000</pubDate>
		<dc:creator>octalh</dc:creator>
		
		<category><![CDATA[C \\ C++]]></category>

		<guid isPermaLink="false">http://www.aztekmindz.org/?p=165</guid>
		<description><![CDATA[Codigo en C++ que nos permite detectar si nuestra aplicación esta siendo ejecutada en una maquina virtual (virtual machine).]]></description>
			<content:encoded><![CDATA[<p>Codigo en C++ que nos permite detectar si nuestra aplicación esta siendo ejecutada en una maquina virtual (virtual machine).</p>
<div class="dean_ch" style="white-space: wrap;"><span class="coMULTI">/*<br />
Virtual Machine Detection<br />
&nbsp; &nbsp;Coded by stoopid</p>
<p>Credits to Cobein<br />
*/</span></p>
<p><span class="co2">#include &lt;stdio.h&gt;</span><br />
<span class="co2">#include &lt;windows.h&gt;</span></p>
<p><span class="kw4">char</span>* sProduct<span class="br0">&#91;</span><span class="br0">&#93;</span> = <span class="br0">&#123;</span> <span class="st0">&quot;*VMWARE*&quot;</span>, <span class="st0">&quot;*VBOX*&quot;</span>, <span class="st0">&quot;*VIRTUAL*&quot;</span> <span class="br0">&#125;</span>; &nbsp; &nbsp;</p>
<p>bool DetectVM<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
<span class="br0">&#123;</span><br />
&nbsp; &nbsp; HKEY hKey;<br />
&nbsp; &nbsp; <span class="kw4">char</span> szBuffer<span class="br0">&#91;</span><span class="nu0">64</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; <span class="kw4">unsigned</span> <span class="kw4">long</span> hSize = <span class="kw4">sizeof</span><span class="br0">&#40;</span>szBuffer<span class="br0">&#41;</span> - <span class="nu0">1</span>; </p>
<p>&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>RegOpenKeyEx<span class="br0">&#40;</span> HKEY_LOCAL_MACHINE, <span class="st0">&quot;SYSTEM<span class="es0">\\</span>ControlSet001<span class="es0">\\</span>Services<span class="es0">\\</span>Disk<span class="es0">\\</span>Enum&quot;</span>, <span class="nu0">0</span>, KEY_READ, &amp;amp;hKey <span class="br0">&#41;</span> == ERROR_SUCCESS <span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span> RegQueryValueEx<span class="br