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

<channel>
	<title>Linux, computación y más... &#187; Tutoriales</title>
	<atom:link href="http://antoniomtz.org/category/tutoriales/feed/" rel="self" type="application/rss+xml" />
	<link>http://antoniomtz.org</link>
	<description></description>
	<lastBuildDate>Sat, 14 Jan 2012 23:12:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Tutorial Jailbreak iPhone 3G/iPhone 3GS/iPod Touch/iPad con Spirit</title>
		<link>http://antoniomtz.org/2010/05/tutorial-jailbreak-iphone-3giphone-3gsipod-touchipad-con-spirit/</link>
		<comments>http://antoniomtz.org/2010/05/tutorial-jailbreak-iphone-3giphone-3gsipod-touchipad-con-spirit/#comments</comments>
		<pubDate>Tue, 25 May 2010 01:58:38 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=551</guid>
		<description><![CDATA[Qué tal amigos, hace tiempo que tengo el blog olvidado, sin embargo ya me he decidido a volver a actualizalo. Pues les cuento que para volverle a tomar sabor a mi iPhone le hice el jailbreak. Requerimientos para jailbreak: iPhone, iPad ó iPod Touch con un firmaware 3.1.2, 3.1.3, o 3.2. Cualquier versión de iTunes [...]]]></description>
			<content:encoded><![CDATA[<p>Qué tal amigos, hace tiempo que tengo el blog olvidado, sin embargo ya me he decidido a volver a actualizalo. Pues les cuento que para volverle a tomar sabor a mi iPhone le hice el jailbreak.</p>
<h3>Requerimientos para jailbreak:</h3>
<ol>
<li>iPhone, iPad ó iPod Touch con un firmaware 3.1.2, 3.1.3, o 3.2.
<li>Cualquier versión de iTunes 9.x
<li>Sincronizar con iTunes antes de hacer el jailbreak
</ol>
<h3>Pasos:</h3>
<ol>
<li>Descargar spirit para windows o mac : <a href="http://spiritjb.com/win">spirit win</a>|<a href="http://spiritjb.com/mac">spirit mac</a>
<li>Conectar tu dispositivo a tu computadora
<li>Ejecutar spirit.
<li>Presionar en el único botón que dice &#8220;jailbreak&#8221;
<li>Tu dispositivo se reiniciará y al iniciar aparecerá un wallpaper de mac os , esperemos que inicie y listo!, jailbreak done!
</ol>
<p>Así de fácil!</p>
<div id="attachment_553" class="wp-caption alignnone" style="width: 376px"><img src="http://antoniomtz.org/wp-content/uploads/2010/05/spirit-jailbreak.jpg" alt="spirit-jailbreak" title="spirit-jailbreak" width="366" height="179" class="size-full wp-image-553" /><p class="wp-caption-text">spirit-jailbreak</p></div>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2010/05/tutorial-jailbreak-iphone-3giphone-3gsipod-touchipad-con-spirit/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crear columnas dinámicas en gridView de .NET</title>
		<link>http://antoniomtz.org/2010/03/crear-columnas-dinamicas-en-gridview-de-net/</link>
		<comments>http://antoniomtz.org/2010/03/crear-columnas-dinamicas-en-gridview-de-net/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 16:31:16 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[c#]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=537</guid>
		<description><![CDATA[Me he topado con un problema, el cual era generar un gridView de manera dinámica desde el codebehind con C#. El problema no fué crear el gridView como tal sino la creación de las columnas personalizadas. Googleando un poco me encontré con diferentes tutoriales, en los cuales saqué varias ideas, la manera de resolverlo fué [...]]]></description>
			<content:encoded><![CDATA[<p>Me he topado con un problema, el cual era generar un <strong>gridView</strong> de manera dinámica desde el codebehind con <strong>C#</strong>. El problema no fué crear el gridView como tal sino la creación de las columnas personalizadas.</p>
<p>Googleando un poco me encontré con diferentes tutoriales, en los cuales saqué varias ideas, la manera de resolverlo fué la siguiente:</p>
<pre name="code" class="c#">
//Creamos nuestro gridView
GridView gv1 = new GridView();
//Llenamos nuestro gridView mediante un DataSet previamente creado.
gv1.DataSource = ds;
//Ponemos la propiedad AutoGenerateColumns en False,
//ya que nosotros las crearemos
gv1.AutoGenerateColumns = false;
//Creamos las columnas dinámicamente,
//en mi caso tenemos una lista con las columnas.
 for (int i = 0; i < report.FieldsInfo.Count; i++)
    {
      //Objeto Columna:
       BoundField ColumnBound;
      //Crear Columna:
       ColumnBound = new BoundField();
       ColumnBound.DataField = report.FieldsInfo[i].DATAFIELD.Trim();
       ColumnBound.HeaderText = report.FieldsInfo[i].Title1.Trim();
       gv1.Columns.Add(ColumnBound);
    }
</pre>
<p>Espero que les sea de utilidad, estaré posteando algunas soluciones a problemas no frecuentes.</p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2010/03/crear-columnas-dinamicas-en-gridview-de-net/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Globalización y localización en Flex</title>
		<link>http://antoniomtz.org/2010/01/globalizacion-y-localizacion-en-flex/</link>
		<comments>http://antoniomtz.org/2010/01/globalizacion-y-localizacion-en-flex/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 20:39:01 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[flex]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=526</guid>
		<description><![CDATA[Uno de los puntos importantes que tenemos que tomar en cuenta a la hora de desarrollar una aplicación es la Globalización y localización, ¿Qué significa cada de uno de éstos términos? Hablamos de globalización cuando nos referimos a todas aquellas acciones relacionadas con el desarrollo de aplicaciones que se adapten a culturas diferentes. Mientras que [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.antoniomtz.org/wp-content/uploads/2010/01/imagenes-de-la-globalizacion-235x300.jpg" alt="imagenes-de-la-globalizacion" title="imagenes-de-la-globalizacion" width="235" height="300" class="alignnone size-medium wp-image-527" /></center></p>
<p>Uno de los puntos importantes que tenemos que tomar en cuenta a la hora de desarrollar una aplicación es la Globalización y localización, ¿Qué significa cada de uno de éstos términos?</p>
<p>Hablamos de <strong>globalización </strong>cuando nos referimos a todas aquellas acciones relacionadas con el desarrollo de aplicaciones que se adapten a culturas diferentes.</p>
<p>Mientras que la <strong>localización</strong> hace referencia a todos aquellos procesos de traducción de los distintos recursos para una cultura especifica.</p>
<p>Para localizar una aplicación Flex se realizan los siguentes pasos:</p>
<ol>
<li>En la carpeta del proyecto crear en raíz una carpeta llamada <em>locale</em>.
<li>Dentro de esa carpeta creamos una llamada es_MX, en este ejemplo lo haremos para español de México
<li>Dentro de la carpeta es_MX vamos a crear los recursos, ej. resources.properties
<li>En el archivo resources podremos agregar nuestros términos que queremos que sean localizados en el formato key=valor. Ejemplo:<br />
Label.Nombre = Nombre<br />
Label.Edad = Edad<br />
Boton.aceptar = Aceptar</p>
<li>Ahora tenemos que crear los recursos es_MX para flex, ya que solo los trae para inglés y japonés. Para ello abrimos una consola, nos situamos en la carpeta bin de la instalación de flex y tecleamos :<br />
<b> copylocale en_US es_MX</b></p>
<li>Ahora configuramos los parámetros de la configuración en Proyecto -> propiedades -> Flex compiler y agregamos:
<p>-locale=es_MX  -source-path=..\locale\{locale}</p>
<li>Ahora con la siguiente instrucción , le decimos a nuestra aplicación cual recurso utilizar.
<pre name="code" class="xml">
  <mx:Metadata>
    [ResourceBundle("resources")]
  </mx:Metadata>
</pre>
<li>Ahora cada ves que queramos hacer uso de los recurso , lo haremos de la siguiente manera:
<pre name="code" class="javascript">
<mx:Button id="zoomButton" label="@Resource(bundle='resources', key='Boton.aceptar')" />
</pre>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2010/01/globalizacion-y-localizacion-en-flex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pasos para crear una cuenta hotmail</title>
		<link>http://antoniomtz.org/2009/10/pasos-para-crear-una-cuenta-hotmail/</link>
		<comments>http://antoniomtz.org/2009/10/pasos-para-crear-una-cuenta-hotmail/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 22:44:23 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[Varios]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=487</guid>
		<description><![CDATA[Éste post va para todas la personas nuevas que me han preguntado como crear un Correo hotmail. Primero Primero escribe en tu navegador www.hotmail.comy aparecerá una pantalla en dónde verás un formulario para poner tu usuario y password, pero para hacer la cuenta tendrás que ir a “Registrarse” entonces aparece un formulario similar al siguiente [...]]]></description>
			<content:encoded><![CDATA[<p>Éste post va para todas la personas nuevas que me han preguntado como crear un <a href="http://www.rlsgeek.com/search/Como+abrir+un+correo+hotmail">Correo hotmail</a>.</p>
<p><b>Primero</b></p>
<p>Primero escribe en tu navegador <a href="http://www.rlsgeek.com/search/www.hotmail.com" title="http://www.rlsgeek.com/search/www.hotmail.com">www.hotmail.com</a>y aparecerá una pantalla en dónde verás un formulario para poner tu usuario y password, pero para hacer la cuenta tendrás que ir a  “Registrarse” entonces aparece un formulario similar al siguiente donde tendras que rellenar campos:</p>
<p><img src="http://i808.photobucket.com/albums/zz10/antoniomtz86/live.png"></p>
<p><strong>Segundo paso</strong>:</p>
<p>Completas todo y clickeas en Acepto, para aceptar los términos de uso de <strong>Windows Live</strong>. Donde pide un mail alernativo debe ser uno tuyo propio o de  familiar o conocido en quien puedas confiar, para en caso de perder contraseña, utilizarlo. Luego también se puede utilizar la “Pregunta secreta” con la misma finalidad.</p>
<p>De allí te llevará a la bandeja de entrada de tu <strong>cuenta de hotmail</strong>!</p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/10/pasos-para-crear-una-cuenta-hotmail/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Gloobus &#8211; el Quick Look para Gnome</title>
		<link>http://antoniomtz.org/2009/09/gloobus-el-quick-look-para-gnome/</link>
		<comments>http://antoniomtz.org/2009/09/gloobus-el-quick-look-para-gnome/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 17:13:36 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[software libre]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=410</guid>
		<description><![CDATA[Gloobus es una extensión para el administrador de archivos Nautilus del escritorio GNOME que permite la previsualización a pantalla completa de varios tipos de archivos, entre ellos: TXT , PDF, JPG, BMP, GIF, PNG, PSD, MP3, OGG, MPG, WMV y XCF, pero potencialmente otros más gracias a su extensibilidad. Su funcionamiento es similar a la [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.antoniomtz.org/wp-content/uploads/2009/09/gloobus-300x174.jpg" alt="gloobus" title="gloobus" width="300" height="174" class="aligncenter size-medium wp-image-411" /></p>
<p><strong>Gloobus</strong> es una extensión para el administrador de archivos <strong>Nautilus</strong> del escritorio <strong>GNOME</strong> que permite la previsualización a pantalla completa de varios tipos de archivos, entre ellos: TXT , PDF, JPG, BMP, GIF, PNG, PSD, MP3, OGG, MPG, WMV y XCF, pero potencialmente otros más gracias a su extensibilidad.</p>
<p>Su funcionamiento es similar a la característica Quick Look introducida por primera vez en<strong> Mac OS X 10.5 &#8220;Leopard&#8221;</strong>: seleccionamos el archivo en Nautilus, pulsamos la barra espaciadora e instantáneamente se abre una ventana auxiliar con el contenido del archivo.</p>
<h3>Instalación para ubuntu 9.04</h3>
<p>Editamos el archivo <strong>/etc/apt/sources.list</strong> y agregamos los siguentes repositorios:</p>
<pre>
deb http://ppa.launchpad.net/tualatrix/gloobus/ubuntu jaunty main
deb-src http://ppa.launchpad.net/tualatrix/gloobus/ubuntu jaunty main
</pre>
<p>Descargamos la llave:</p>
<pre>
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0624A220
</pre>
<p>Actualizamos e instalamos:</p>
<pre>
sudo apt-get update
sudo apt-get install gloobus-preview
sudo apt-get upgrade
</pre>
<p>Finalmente, reseteamos nautilus:</p>
<pre>
nautilus -q
nautilus &#038;
</pre>
</h3>
<p>Video demostrativo:</h3>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/tKgmjX2M5b4&#038;hl=es&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/tKgmjX2M5b4&#038;hl=es&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/09/gloobus-el-quick-look-para-gnome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crear un webservice para validación de E-mail</title>
		<link>http://antoniomtz.org/2009/08/crear-un-webservice-para-validacion-de-e-mail/</link>
		<comments>http://antoniomtz.org/2009/08/crear-un-webservice-para-validacion-de-e-mail/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 17:29:34 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mono]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=324</guid>
		<description><![CDATA[En éste tutorial, veremos como crear un webservice que contenga un método para validar si una dirección de emial es válida ó no. También crearemos una aplicación web en asp.net para consumir el webservice. En ésta ocasión utilizaremos VS2008 con el framework 3.5 SP1. Lo primero que haremos será crear un sitio web del tipo [...]]]></description>
			<content:encoded><![CDATA[<p>En éste tutorial, veremos como crear un webservice que contenga un método para validar si una dirección de emial es válida ó no. También crearemos una aplicación web en asp.net para consumir el webservice. En ésta ocasión utilizaremos VS2008 con el framework 3.5 SP1.</p>
<p>Lo primero que haremos será crear un sitio web del tipo webservice, para ello vamos a <b>Fila->New-WebSite</b>, en la ventana que nos aparece seleccionamos <b>ASP.NET WebService</b>:</p>
<p><center><img src="http://farm4.static.flickr.com/3479/3836496271_d75b08565e.jpg"></center></p>
<p>Por default nos creará un método que regresa un simple &#8220;Hola Mundo&#8221;, modificaremos ese método y agregamos lo siguiente:</p>
<pre>
[WebMethod]
public bool EmailValidation(string email)
  {
string expresion = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
if (System.Text.RegularExpressions.Regex.IsMatch(email, expresion))
      {
if (System.Text.RegularExpressions.Regex.Replace(email, expresion,String.Empty).Length == 0)
      { return true; }
       else
      { return false; }
      }
     else
      { return false; }
    }
</pre>
<p>Quedaría de la siguiente manera:</p>
<p><center><img src="http://farm3.static.flickr.com/2498/3836561029_d034f79890.jpg"></center></p>
<p>Con ésto ya tenemos creado nuestro webservice con un método que nos validará un email, ahora agregaremos un nuevo proyecto a nuestra solución, será un proyecto web asp.net, para ello, vamos a <b>File->Add->New Project</b> y seleccionamos <b>ASP.NET Web Application</b>:</p>
<p><center><img src="http://farm3.static.flickr.com/2635/3836503907_3914b5f89f.jpg"></center></p>
<p>Lo primero que debemos hacer es agregar la referencia del webservice a nuestro nuevo proyecto web, para ello damos click derecho en <b>Referencia</b> y luego Agregar referencia web&#8230;</p>
<p><center><img src="http://farm4.static.flickr.com/3532/3836496273_bd0810e623_o.jpg"></center></p>
<p>Nos aparecerá una ventana para seleccionar la fuente del webservice, seleccionaremos <b>WebService en this solution</b>:</p>
<p><center><img src="http://farm3.static.flickr.com/2583/3836503891_cfd5fc1d43.jpg"></center></p>
<p>Ahí nos aparecerá el webservice que habíamos creado, lo seleccionamos y le damos <b>Add Reference</b>:</p>
<p><center><img src="http://farm4.static.flickr.com/3572/3836503879_efdf1d91a7.jpg"></center></p>
<p><center><img src="http://farm3.static.flickr.com/2588/3836503881_32fcc3e7fd_o.jpg"></center></p>
<p>Una vez que ya está agregada la referencia, vamos a modificar el archivo Default.aspx y le ponemos un TextBox y un Botón:</p>
<p><center><img src="http://farm4.static.flickr.com/3477/3836503899_21d36b2377.jpg"></center></p>
<p>Ahora en el evento OnClick del botón, agregamos el siguiente código:</p>
<pre>
 localhost.Service EmailService = new localhost.Service();
   bool Valid = EmailService.EmailValidation(TextBox1.Text);
       if (Valid)
          Response.Write("Email Correcto");
         else
          Response.Write("Email Incorrecto");
</pre>
<p>Quedaría de la siguiente manera:</p>
<p><center><img src="http://farm3.static.flickr.com/2524/3836496269_0e2d85729f.jpg"></center></p>
<p>Para correr el proyecto, configuramos el proyecto webapplication para que arranque de inicio , dando click derecho en el proyecto y le damos en <b>Set as StartUp Project</b>:</p>
<p><center><img src="http://farm3.static.flickr.com/2496/3836496267_612acd95d9_o.jpg"></center></p>
<p>Listo!, probamos:</p>
<p><center><img src="http://farm4.static.flickr.com/3438/3836496265_05a894aafe_o.jpg"></center><br />
<center><img src="http://farm3.static.flickr.com/2477/3836496233_3dfdef04c5_o.jpg"></center></p>
<p>Si quieres hacer un webservice libre utilizando Mono, puedes visitar mi artículo anterior: <a href="http://www.antoniomtz.org/2009/05/crear-un-web-service-en-monodevelop/">Crear un webservice en monodevelop</a></p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/08/crear-un-webservice-para-validacion-de-e-mail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programación en 3 capas</title>
		<link>http://antoniomtz.org/2009/07/programacion-en-3-capas/</link>
		<comments>http://antoniomtz.org/2009/07/programacion-en-3-capas/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 21:25:32 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Mono]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://www.antoniomtz.org/?p=305</guid>
		<description><![CDATA[Una buena práctica a la hora de desarrollar un sistema, es tratar de que la arquitectura sea de mínimo 3 capas: Presentación, lógica de negocio y datos. En ésta imágen se puede entender mejor la arquitectura de 3 capas: En la capa de presentación sería la interfaz del usuario, ya sea con windows form, GTK [...]]]></description>
			<content:encoded><![CDATA[<p>Una buena práctica a la hora de desarrollar un sistema, es tratar de que la arquitectura sea de mínimo 3 capas: <strong>Presentación, lógica de negocio y datos</strong>.</p>
<p>En ésta imágen se puede entender mejor la arquitectura de 3 capas:</p>
<p><img src="http://farm3.static.flickr.com/2456/3775345369_8cec34f8b7_o.jpg" alt="3 capas" /></p>
<p>En la capa de presentación sería la interfaz del usuario, ya sea con windows form, GTK ó Web; la capa de la lógica de negocio serían todas las validaciones y/o métodos, mientras que la capa de datos sería la fuente de datos, puede ser una base de datos, un archivo XML, etc&#8230;</p>
<p>Cómo práctica haremos una pequeña aplicación en 3 capas sobre un login en <b>c# con la ayuda de monodevelop</b>. Para comenzar creamos una nueva solución en blanco llamada <b>Proyecto3Capas</b>.</p>
<p>Primero comenzaremos con la capa de datos, para ello, damos click derecho en la solución llamada Proyecto3Capas->Añadir->Nuevo Proyecto, seleccionamos un proyecto web vacio y le ponemos de nombre <b>Datos</b>:</p>
<p><center><img src="http://farm3.static.flickr.com/2584/3775370339_26853a7d18.jpg"></center></p>
<p>Nuestra capa de datos será un webservice dónde contendra el usuario y password del login. Una vez tengamos damos click derecho en el proyecto Datos->Añadir->Nuevo archivo y seleccionamos <b>Servicio web con code Behide</b>, si tienes dificultades para crear el webservice puede ir al post: <a href="http://www.antoniomtz.org/2009/05/crear-un-web-service-en-monodevelop/">crear un webservice en monodevelop</a>.</p>
<p>En el archivo webservice.asmx.cs agregaremos un nuevo método:</p>
<pre name="code" class="c#">
  [WebMethod]
    public bool Datos(string user, string pass)

    {

        if(user=="admin" &#038;&#038; pass=="admin")
				return true;
			else
				return false;

    }
</pre>
<p>Es un simple método que valida usuario = admin y password también admin.</p>
<p>Luego, seguirá la lógica de negocio, para ello, damos click derecho en la solución, Añadir->Nuevo proyecto, y seleccionamos una Librería en c# (puede ser VB.NET si lo desea),le pondremos como nombre <b>Logica</b>, lo bueno de ésto es que se creará una DLL por lo que puede ser escrita en cualquier lenguaje.</p>
<p><center><img src="http://farm3.static.flickr.com/2534/3763960361_645908018b.jpg"></center></p>
<p>Para ser uso de la capa de Datos , damos click derecho en la carpeta de <b>Referencia->Editar referencia</b> , vamos a la pestaña de <b>Proyectos</b> y agregamos la capa de Datos:</p>
<p><center><img src="http://farm4.static.flickr.com/3482/3776217504_fc48743027.jpg"></center></p>
<p>Agregaremos un método llamado <b>Autentificacion</b> con lo siguiente:</p>
<pre name="code" class="c#">
	public bool Autentificacion(string user, string pass)
		{
			Datos.webservice service = new Datos.webservice();
			bool resultado = service.Datos(user,pass);
			if(resultado==true)
				return true;
			else
				return false;
		}
</pre>
<p>Ahora Falta crear la capa de <b>Presentación</b>, nuevamente damos click derecho en la solución y añadimos un proyecto GTK# llamado <b>Presentación</b>, una vez creado, agregamos la referencia de la capa de la lógica.</p>
<p><center><img src="http://farm4.static.flickr.com/3468/3763960357_a54d4d6a83.jpg"></center></p>
<p>Creamos una interfaz donde acepte un usuario, contraseña, un label para mostrar resultado y un botón, en el evento click del botón, añadimos lo siguiente:</p>
<pre name="code" class="c#">
Logica.Logica login = new Logica.Logica();
bool result = login.Autentificacion(this.entry1.Text,this.entry2.Text);
	if(result==true)
		label3.Text = "correcto";
	else
		label3.Text = "incorrecto";
</pre>
<p><center><img src="http://farm3.static.flickr.com/2541/3763960355_997d20238a_o.png"></center></p>
<p>Ésto sería un proyecto muy sencillo pero muy claro de como se puede dividir un proyecto en 3 capas, ésto nos ayudará a identificar mejor los posibles errores, mantenible,etc&#8230;</p>
<p>Les dejo el proyecto terminado para su descarga: <a href="http://www.antoniomtz.org/files/Proyecto3Capas.zip">Proyecto 3 Capas.zip</a></p>
<p>Comentarios, dudas, sugerencias son bien aceptadas.</p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/07/programacion-en-3-capas/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Encriptación de Texto en C# con Mono</title>
		<link>http://antoniomtz.org/2009/07/encriptacion-de-texto-en-c-con-mono/</link>
		<comments>http://antoniomtz.org/2009/07/encriptacion-de-texto-en-c-con-mono/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 07:19:38 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Mono]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[software libre]]></category>

		<guid isPermaLink="false">http://localhost/wordpress2/?p=261</guid>
		<description><![CDATA[La encriptación en el área de seguridad es muy importante, y más aún en una aplicación a la hora de guardar contraseñas en una base de datos. Aquí les dejo un proyecto con el cuál podemos encriptar y desencriptar texto con la ayuda de algunas clases que se encuentran en .NET, me basé en ésta [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.antoniomtz.org/files/candado.jpg"></center></p>
<p>La encriptación en el área de seguridad es muy importante, y más aún en una aplicación a la hora de guardar contraseñas en una base de datos.</p>
<p>Aquí les dejo un proyecto con el cuál podemos encriptar y desencriptar texto con la ayuda de algunas clases que se encuentran en .NET, me basé en ésta página <a href="http://blogs.windowsclient.net/linkecubeko/archive/2009/05/01/como-cifrar-y-descifrar-texto-usando-c.aspx" rel="nofollow" target="_blank">Using System.Linkecubeko</a></p>
<p>Para comenzar utilizaremos los siguientes espacios de nombres:</p>
<pre>
using System.Text;
using System.Security.Cryptography;
</pre>
<p>Y con las siguientes clases:</p>
<p><b>MD5CryptoServiceProvider (Clase)</b></p>
<p>Calcula el valor de hash MD5 (Message-Digest Algorithm 5), de los datos de entrada utilizando la implementación proporcionada por el proveedor de servicios criptográfico (CSP). Esta clase no se puede heredar.</p>
<p><b>UTF8Encoding (Clase)</b></p>
<p>Representa una codificación UTF-8 de caracteres Unicode.</p>
<p><b>TripleDESCryptoServiceProvider (Clase)</b></p>
<p>Define un objeto contenedor para obtener acceso a la versión del proveedor de servicios criptográficos (CSP) del algoritmo TripleDES (algoritmo que hace triple cifrado del algoritmo Data Encryption Standard) No se puede heredar esta clase.</p>
<p><b>CipherMode (Enumeración)</b></p>
<p>Especifica el modo de cifrado de bloques que se utilizará para cifrar.<br />
PaddingMode (Enumeración)</p>
<p>Especifica el tipo de relleno que se aplica cuando el bloque de datos del mensaje es más pequeño que el número total de bytes necesarios para una operación criptográfica.</p>
<p><b>ICryptoTransform (Interfaz)</b></p>
<p>Define las operaciones básicas de las transformaciones criptográficas.</p>
<p>Gracias al <b>proyecto mono</b>, podemos crear esta clase y liberarla bajo la licencia GPL.</p>
<p>Aquí les dejo la clase cifrado ya codificada: <a href="http://www.antoniomtz.org/files/cifrado.cs">cifrado.cs</a></p>
<p>Para comenzar, creamos un proyecto nuevo C# con Gtk# en Monodevelop y creamos una forma más ó menos como ésta:</p>
<p><center><img src="http://www.antoniomtz.org/files/encriptacion.png"></center></p>
<p>Para facilitar mejor las cosas he creado una <b>dll</b> con las clases para encriptar y desencriptar, primero nos descargamos la dll: <a href="http://www.antoniomtz.org/files/criptologia.dll">criptologia.dll</a>, luego la agregamos como referencia a nuestro proyecto dando click derecho en <b>Referencias</b> y luego <b>Editar preferencias&#8230;</b> .:</p>
<p><center><img src="http://farm3.static.flickr.com/2107/2469412309_6ec38cbca4.jpg"></center></p>
<p>Ahora en el evento Click del Botón que dice encriptar, ponemos lo siguiente:</p>
<pre>
criptologia.Cifrado oCifrado = new criptologia.Cifrado();
entry2.Text = oCifrado.Encriptar(entry1.Text);
</pre>
<p>Y en el evento Click del Botón desencriptar, ponemos:</p>
<pre>
criptologia.Cifrado oCifrado = new criptologia.Cifrado();
entry3.Text = oCifrado.Desencriptar(entry2.Text);
</pre>
<p>Aquí les dejo el proyecto terminado: <a href="http://www.antoniomtz.org/files/encriptacion.zip">encriptacion.zip</a>.</p>
<p><b>Conclusión:</b></p>
<p>Con ésto podemos agregar mayor seguridad en nuestros aplicaciónes ó sistemas, gracias a mono nuestra DLL es libre y se puede utilizar con cualquier propósito, estudiar, modificar y redistribuir.</p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/07/encriptacion-de-texto-en-c-con-mono/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Grabar video en iPhone 3G Firmware 3.0</title>
		<link>http://antoniomtz.org/2009/07/grabar-video-en-iphone-3g-firmware-3-0/</link>
		<comments>http://antoniomtz.org/2009/07/grabar-video-en-iphone-3g-firmware-3-0/#comments</comments>
		<pubDate>Sun, 12 Jul 2009 18:38:05 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://localhost/wordpress2/?p=250</guid>
		<description><![CDATA[Continuando con ¿Qué hacer despues del jailbreak?, una de las carencias de los iphone es no poder grabar video, sin embargo, existe una aplicación muy buena llamada videorecorder, que gracias a esa aplicación podemos grabar video y subirlo a youtube directamente. Instalación Primero vamos a cydia y agregamos el siguiente repositorio: http://iphonevideorecorder.com/3 Si no recuerdan [...]]]></description>
			<content:encoded><![CDATA[<p>Continuando con <a href="http://www.antoniomtz.org/2009/07/%C2%BFque-hacer-despues-del-jailbreak-a-nuestro-iphone-3g-os-3-0/">¿Qué hacer despues del jailbreak?</a>, una de las carencias de los iphone es no poder grabar video, sin embargo, existe una aplicación muy buena llamada <b>videorecorder</b>, que gracias a esa aplicación podemos grabar video y subirlo a youtube directamente.</p>
<p><img src="http://farm3.static.flickr.com/2615/3713389003_2dccb9c0fc_m.jpg"></p>
<h3>Instalación</h3>
<ol>
<li>Primero vamos a cydia y agregamos el siguiente repositorio:</li>
<pre>

http://iphonevideorecorder.com/3
</pre>
<p>Si no recuerdan ó no saben agregar repositorios visiten éste post: <a href="http://www.antoniomtz.org/?q=que-hacer-despues-de-jailbreak-iphone">Repositorios iphone</a></p>
<li>De ese mismo repositorio instalamos el <b>VideoRecorder 3.0</b>
<li>Al momento de abrirlo la primera vez nos pedirá que paguemos por el , le damos en ingresar código y tecleamos el siguiente:<br />
<font color=red>XUMIQDIKNI</font>
</ol>
<p>Lo que me gustó , fué que al final de grabar tu video lo puedes compartir en youtube directamente, subirlo a tu computadora ó mandarlo al mail.</p>
<p><img src="http://farm3.static.flickr.com/2436/3714205690_111ee24f12.jpg"></p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/07/grabar-video-en-iphone-3g-firmware-3-0/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>¿Qué hacer después del Jailbreak a nuestro iPhone 3G OS 3.0?</title>
		<link>http://antoniomtz.org/2009/07/%c2%bfque-hacer-despues-del-jailbreak-a-nuestro-iphone-3g-os-3-0/</link>
		<comments>http://antoniomtz.org/2009/07/%c2%bfque-hacer-despues-del-jailbreak-a-nuestro-iphone-3g-os-3-0/#comments</comments>
		<pubDate>Sat, 11 Jul 2009 16:20:48 +0000</pubDate>
		<dc:creator>antoniomtz</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://localhost/wordpress2/?p=249</guid>
		<description><![CDATA[Pues sí, he caido en la tentación y le he hecho el Jailbreak a mi iPhone 3G con Firmware 3.0, razones: Ya me había aburrido mi iPhone, quería cosas nuevas No tengo pensado comprar aplicaciones en la appStore completas (Si, me duele el codo) Funcionalidades nuevas a mi iPhone, grabar video, intercambio de archivos vía [...]]]></description>
			<content:encoded><![CDATA[<p>Pues sí, he caido en la tentación y le he hecho el <b>Jailbreak a mi iPhone 3G con Firmware 3.0</b>, razones:</p>
<ol>
<li>Ya me había aburrido mi iPhone, quería cosas nuevas</li>
<li>No tengo pensado comprar aplicaciones en la appStore completas (Si, me duele el codo)
<li>Funcionalidades nuevas a mi iPhone, grabar video, intercambio de archivos vía Bluetooth.</li>
</ol>
<p>Básicamente esas son algunas de las razones por las cuales decidí hacer el jailbreak a mi iPhone; éste tutorial hablaremos de que hacer después de hacer el jailbreak, casi todo los tutoriales son de como hacerlo, la verdad hacerlo está muy fácil, me tarde como 7 min. sin mayores complicaciones, basta con bajarnos <b>redsnow y el firmware 3.0</b>, hacer unos procedimientos sencillos que redsnow nos va guian y listo!, para mi lo dificil fué lo siguiente, porque yo no tengo experiencia en ésto, así que no sabía que era cydia, que repos agregar etc&#8230; Para hacer el jailbreak me guié de ésta página: <a href="http://www.iclarified.com/entry/index.php?enid=4301">How to jailbreak Your iPhone 3G on OS 3.0 Using RedSn0w (Windows)</a> y en éste video <a href="http://www.antoniomtz.org/?q=jailbreak-iphone-ipod">video jailbreak</a>.</p>
<p>Bueno, una vez que hayamos hecho el jailbreak, nos aparecerá un nuevo icono café que dice cydia, ése será nuestro administrador para instalar aplicaciones de terceros, lo primero que hice fué una actualización que me pedia cydia, no logré capturar la imágen para mostrarles, pero cual lo abren la primera vez nos indicará que necesita actualizar, le damos en <b>upgrade essential</b> y listo.</p>
<p>Cydia por defaul ya tiene repositorios agregados, que éstos nos permiten instalar aplicaciones de terceros como ya lo había comentado, sin embargo existen muchas otras repos que contiene aplicaciones que no vienen en las de default, la primera aplicación esencial que hay que instalar es <b>AppSync for OS 3.0</b>, ¿para qué sirve ésta aplicación?, pues es para poder instalar aplicaciones de la AppStore oficial crackeados, es decir, podemos bajar e instalar el need for speed completo y ahorrarnos los $70 pesos que cuesta en la AppStore oficial.</p>
<ul>
<li>Lo primero que tenemos que hacer es agregar el repositorio, para ello, vamos a <b>cydia->Manage->Sources</b> y en la parte de arriba le damos <b>Edit</b> y luego <b>Add</b>, nos aparecerá un cuadro para teclear una dirección de internet, ahí ponemos:</li>
<pre>

http://cydia.hackulo.us
</pre>
<p><img src="http://farm3.static.flickr.com/2631/3709600583_08773de586.jpg"></p>
<li>Una vez que se haya actualizado los repositorios, ahí mismo en sources aparecerá el repositorio agregado, si le damos click veremos todos los paquetes que contiene dicha repo, ahi se encuentra el <b>AppSync For OS 3.0</b>, lo instalamos y <b>REINICIAMOS EL iPHONE</b>.</li>
<li>Ahora ¿Cómo podemos bajar por ejemplo el need for speed, o el iBeer, FieldRunners completo?, hay varias formas, la más sencilla es instalar el <b>Installous</b>, ésa aplicación también se encuentra en <b>cydia.hackulo.us</b>, con ella podemos navegar en busca de aplicaciones oficiales e instalarlas sin ningún problema, es parecido al appstore:
<p><img src="http://farm4.static.flickr.com/3516/3709772469_8ce3a959e2_m.jpg"> <img src="http://farm4.static.flickr.com/3452/3709772945_c597ea4e38_m.jpg"> <img src="http://farm3.static.flickr.com/2664/3709773311_f540338907_m.jpg"> <img src="http://farm3.static.flickr.com/2605/3709773797_89e4eae591_m.jpg"> <img src="http://farm3.static.flickr.com/2466/3709789087_bb085c7151_m.jpg"></p>
</ul>
<p>Ésto sería una de las primeras cosas que debemos hacer después de hacer el jailbreak, en artículos posteriores, iré comentando mi experiencia con el jailbreak y algunos consejos.</p>
]]></content:encoded>
			<wfw:commentRss>http://antoniomtz.org/2009/07/%c2%bfque-hacer-despues-del-jailbreak-a-nuestro-iphone-3g-os-3-0/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

