Aumentar tamaño de Partición en VirtualBox

Si alguna ves te pasó (como a mí) que instalé Windows 7 (o cualquier S.O.) con una espacio en Disco Duro reducido para hacer pruebas, y después de trabajar mucho te das cuenta que el espacio ya no te alcanzo, lo menos que quieres hacer es volver a instalarlo con todas las aplicaciones y configuración nuevamente.

La solución es la siguiente:

  1. Añade un disco con mayor capacidad a tu Máquina Virtual (aparte del que ya tienes instalado, por ejemplo, mi disco duro virtual era de 20GB, le agregué otro de 50GB)
  2. Descarga la última versión del LiveCD de GParted (http://gparted.sourceforge.net/)
  3. Configurar la máquina Virtual, para que inicie desde el CD (debes configurar al CD para que cargue la imagen de GParted)
  4. Configuración en GParted
    1. En el nuevo disco duro, crea una nueva partición de tipo MSDOS
    2. Del primer disco duro (el de menor capacidad) copia cada partición y pégala en el nuevo disco duro
  5. En la máquina Virtual, remueve el disco duro anterior (no lo elimines aún por seguridad)
  6. Pone el disco duro como primera opción de arranque

Es probable, que cuando inicies la máquina el S.O. (en mi caso con Windows 7) marcó un error de Boot, ya que normalmente una instalación tiene 2 particiones (una es el boot y la otra el espacio de almacenamiento en si), para reparar eso, inicia la máquina virtual desde una imagen ISO de Windows 7 y en lugar de instalar da clic en la opción de Reparar, automáticamente detectará el error, te pedirá reiniciar y listo.

Ahora disfruto de 20 GB libres :)

La misma explicación pero en Inglés y con imágenes: http://www.my-guides.net/en/content/view/122/26/


Virus USB: Archivos Ocultos y Accesos Directos (.lnk)

Clic para descargar herramienta

Existe un virus muy común que afecta a Dispositivos de Almacenamientos USB para Sistemas Operativos Windows, que oculta los archivos y carpetas y genera muchos archivos de accesos directo (.lnk).

Hice un Script en VBScript (archivo .vbs) que de manera automática restaura los archivos que el virus ocultó y elimina los archivos de acceso directo (.lnk).

Para utilizar el Script, debes descargar el archivo, descomprimirlo y copiar el archivo que se llama HerramientaArchivos.vbs a la USB (Dispositivo de Almacenamiento), una vez que el archivo está en la memoria (en la raíz), solo debes ejecutarlo (Darle doble clic)

El Script es seguro, si deseas ver el contenido puedes abrirlo con el Bloc de Notas. Te agradecería reportaras si algo no te funciona o si haces una mejora al Script para compartira con la comunidad.

(continue reading…)


CakePHP: View to PDF

I was working on a system that needed generate a PDF report of a view, I solved it as follows:

function report_view() {
	...
	$this->render();
	require_once ('vendors/dompdf/dompdf_config.inc.php'); // import dompdf library
	$dompdf = new DOMPDF();
	$dompdf->load_html($this->output);
	$dompdf->set_paper("a4", "landscape" );
	$dompdf->render();
	$dompdf->stream('ReportExample_'.date('d_M_Y').'.pdf');
	exit(0);
}

You can see, that I used “$this->output” as parameter of load_html to get the output of the view.

I used the dompdf library.


Bayes & Árboles de desición

Desarrollé una aplicación en linea para generar y calcular Árboles de Desición sin experimentación, Probabilidades conjuntas, Eventos reducidos, Probabilidades A Posteriori, a partir de datos introducidos por el usuario.

Árbol de probabilidades sin experimentación

(continue reading…)


Tour: Tehuixtla – Cajones – Tehuixtla

Ruta: Tehuixtla – Tequesquitengo – Puente de Ixtla – Cajones – El Estudiante – Tehuixtla

Distancia: 38 Kilómetros
Integrantes:

  • Chava Ruiz
  • Juan Albarrán
  • Ignacio Ocampo
  • Luis Manuel Figueroa
  • Luis Figueroa

Los integrantes

(continue reading…)


Analizador de expresiones regulares

Desarrollé una aplicación interactiva en línea, para analizar expresiones regulares, en esta primera versión convierte una expresión regular en un parser tree, y el parser tree en un NFA-e (autómata finito no determinístico con transiciones épsilon).

La intención es hacer una herramienta didáctica que permita comprender el proceso. En la siguiente fase pretendo convertir el NFA-e a un DFA (autómata finito determinístico).

Parse Tree for (a|b)*abb

Para hacer la conversión, utilicé un enfoque top-down.

Las reglas de producción son las siguiente:

char = caracter alfanumérico

atom = char | ‘(‘ expr ‘)’

rep = atom ‘*’ | atom ‘?’ | atom

concat = rep ‘.’ concat | rep

expr = concat ‘|’ expr | concat

Ir a la página del proyecto


Simplificación de código en PHP

Simplificar el código (en cualquier lenguaje de programación) ayuda no solo al rendimiento del programa, sino que también facilita la comprensión del mismo. (Claro que siempre debe ir acompañado de una buena documentación)

1) IF (estructura de control)

Varias Expresiones (ejemplo no simplificado)

if(isset($_GET['accion'])) {
     if($_GET['accion'] == 'agregar') { //Acción... }
}

Ejemplo simplificado

if(isset($_GET['accion']) && $_GET['accion'] == 'agregar') { //Acción... }

(continue reading…)


Paginación de resultados con Php y MySql

Ejemplo práctico de paginación de resultados en Php

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("dev");
$noRegistros = 3; //Registros por página
$pagina = 1; //Por default, página = 1
if($_GET["pagina"]) //Si hay página por ?pagina=valor, lo asigna
    $pagina = $_GET["pagina"];
echo "Pagina: ".$pagina."<hr>";

//Utilizo el comando LIMIT para seleccionar registros
$sSQL = "SELECT * FROM alumnos LIMIT ".($pagina-1)*$noRegistros.",$noRegistros";
$result = mysql_query($sSQL) or die(mysql_error());
while($row = mysql_fetch_array($result)) { //Exploracion comun de registros
    echo $row["nombre"]."<br>";
}

//Imprimiendo páginas
$sSQL = "SELECT count(*) FROM alumnos"; //Cuento el total de registros
$result = mysql_query($sSQL);
$row = mysql_fetch_array($result);
$totalRegistros = $row["count(*)"]; //Almaceno el total en una variable

echo "<hr>Total registros: ".$totalRegistros.", Pagina: ";

$noPaginas = $totalRegistros/$noRegistros; //Determino la cantidad de páginas
for($i=1; $i<$noPaginas+1; $i++) { //Imprimo las páginas
    if($i == $pagina)
        echo "$i "; //A la página actual no le pongo link
    else
        echo "<a href=\"?pagina=".$i."\">".$i."</a> ";
}
?>

JQuery: Ventana Interna al cargar la página

Hola! Aquí les dejo un ejemplo de cómo mostrar un PopUP interno, al cargar la página, para eso, utilizamos 3 elementos importantes:

  • JavaScript
  • JQuery (Es un framework para JavaScript que nos facilita el trabajo de codificación, entre otras cosas nos permite hacer transiciones tipo fadeIn fadeOut en Alpha de Objetos, página oficial de JQuery)
  • CSS

(continue reading…)


Mantener identación en RichTextBox C# .Net

Cuando estamos haciendo algún tipo de editor de texto plano, nos topamos muchas veces con el problema de la identación, y es que cuando presionamos enter, la siguiente linea comienza de la posición 1, es decir, sin respetar los espacios ni tabuladores que hay en la linea actual. Esto es un problema, porque manualmente tenemos que hacer el espaciado, además de incómodo.

La solución que propongo es la siguiente:

  1. Buscamos el próximo salto de linea anterior a la posición actual del cursor
  2. Vamos recorriendo hacia adelante cada caracter
    Si es un espacio, tabulador, o salto de linea lo almacenamos en una cadena temporal
    Si es otro caracter, cancelamos la búsqueda, hasta este punto ya tenemos en una cadena temporal todos los carácteres que forman nuestra identación
  3. Finalmente, agregamos después de la posición del cursor actual de nuestro RichTextBox el contenido de nuestra variable temporal

Ojalá les sea útil!

Adjunto ejemplo: IdentacionTextBox20100502200133


  • Categorías

  • Twitter

  • Copyright © 2009-2011 nafiux.com Blog. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress