General

Función de encriptación md5 para para C#. (igual que md5() de php)

Bueno, esto no tiene mucha explicacion, mas que nada, hay que aclarar que esta función, tiene exactamente el mismo comportamiento que la funcion md5 de php.

Código:

[cc lang=”c#” tab_size=”2″ ]
public string md5(string password)
{
//Declaraciones
System.Security.Cryptography.MD5 md5;
md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();

//Conversion
Byte[] encodedBytes = md5.ComputeHash(ASCIIEncoding.Default.GetBytes(password)); //genero el hash a partir de la password original

//Resultado

//return BitConverter.ToString(encodedBytes); //esto, devuelve el hash con “-” cada 2 char
return System.Text.RegularExpressions.Regex.Replace(BitConverter.ToString(encodedBytes).ToLower(), @”-“, “”); //devuelve el hash continuo y en minuscula. (igual que en php)
}
[/cc]

Uso:

md5(string);

por ejemplo:    md5(“lordblacksuca”);  devuelve d9c3a865c54e6aedbb926983974313f4

Recuerda, si te sirvió, comentá.

Error 0x80070643 al instalar Windows Live Essentials

Este error, me hizo perder unas 4 horas de mi dia, y me hizo enojar bastante…. pero lo solucioné.

Después de intentar todos lo resultante de un EXTENSA búsqueda en google, (busque hasta en chino ja) como por ejemplo:

  • Activar Firewall, Defender
  • Eliminar Windows Live con herramientas de terceros
  • Eliminar entradas del registro manualmente
  • Eliminar Windows Live con la utilidad Windows Install Clean Up
  • etc etc etc etc

Encontré lo siguiente:

Debajo del código de error que te muestra el instalador de Windows Live, muestra el nombre del paquete que produjo el error. En mi caso, el paquete era d3dx10-i386.  Si bien no es el mismo paquete el que nos puede causar el problema, la solución es la siguiente:

En esta página: http://eddsn.com/projects/wlewp/15.4.3502.0922/Windows-Live-Essentials-15.4.3502.0922-neutral.html Buscas y descargas el paquete que te da problema, lo descomprimis y lo instalas manualmente!

Ahora, el instalador del paquete, SI te va a decir exactamente cual es el error que tiene y porque no se puede instalar, entonces buscas el error y lo solucionas.

En mi caso, el error era en los archivos de DirectX, es decir, en algunas dll de system32 que tenian un icono con un candadito, lo que hice fue, copiarlas al escritorio, y luego volverlas a pegar en system32 y con eso se le salio el candadito y el paquete se instalo bien.

Entonces después se vuelve a ejecutar la instalación de windows live.

Si te sirvió de algo, comenta!

Saludos

BCDeditOR 1.0 Mi herramienta para el Loader de Windows (OpenSource)

BCDeditOR 1.0

by Lordblacksuca

BCDeditOR es una herramienta  OpenSource que permite cambiar facilmente los valores mas importantes del “Cargador de Arranque de Windows” (BCD)

Está programado en C# con VisualStudio 2008, y no usa ninguna dll rara, asi que no tendrá ningun problema para compilar.

El código no esta optimizado, (lo hice en una hora), se puede hacer mucho mejor…  pero bueno, será para la próxima versión.

La version 1.0 de este programa básicamente permite:

  • Cambiar el tiempo de espera: El SO seleccionado se arrancará una vez transcurrido el tiempo.
  • Cambiar los nombres: Se pueden cambiar los nombres de los sistemas operativos que aparecen en la tabla
  • SO por defecto: Permite que un sistema operativo este seleccionado por defecto.

Como dije anteriormente, es de codigo libre, por lo tanto, aqui les dejo la descarga de los sources:

BCDeditOR1.0 Sources (C# Visual Studio 2008)

Está bajo licencia GPL, es decir, lo puedes modificar y redistribuir a tu gusto, siempre y cuando mantengas el copyright.

Descarga:

BCDeditOR 1.0 (Windows)

Esta herramienta ha sido probada en Windows 7 con resultados excelentes. En windows vista debería funcionar también.

Espero comentarios!

Saludos.

XNA: Hot Car RACING by Lordblacksuca

XNA Hot Car RACING

XNA: Hot Car Racing, es un juego de carrera de autos hecho en XNA y Visual C#.

Como ya presente el trabajo en la facultad, ahora libero el codigo fuente.

Se trata de un juego que parece una especie de “Re-Make” del famoso Road Figther de la consola FAMILY, es en 2D y se la cámara tiene una vista “desde arriba”. el fondo se va desplazando hacia abajo y hay obstáculos como manchas de aceite. También el camino tiene algunas curvas y puentes.

La meta es llegar al final del recorrido antes de que se acabe el combustible, para ello deberás tratar de no chocar otros autos ni pisar manchas de aceite. Si no te alcanza el combustible también  hay “Turbos” en el suelo que aceleran el auto, y bidones de combustible que agregan 10 litros más!

En el archivo .RAR van a encontrar el codigo fuente programado en C# y XNA 3.1 en Visual Studio 2008 y ademas la version ejecutable del juego para que lo puedan probar.

FEATURES:

  • Fondo multi imagenes
  • Función para cambiar imagenes de los fondos
  • El auto va mas despacio en el pasto
  • Efecto de aceleracion y desaceleracion BIEN MARCADOS cuando se aprieta la flecha de arriba
  • Manchas de aceite
  • El auto se resbala en las manchas de aceite.
  • Turbo Booster
  • El auto se acelera unos 100KM/H durante un cierto tiempo cuando pasa sobre un turbo
  • Enemigos colocados en los 3 carriles de forma aleatoria.
  • Deteccion de colisiones con 3 circunferencias para el auto del jugador, una arriba, otra abajo, y otra al centro.
  • Deteccion de colisiones con 2 circunferencias para las manchas de aceite.
  • Indicador de combustible para que sea mas interesante
  • En linea recta, sin chocar con nada se alcanza la meta con 100 de combustible
  • Hay algunos bidones que recargan el combustible que se ponen de forma aleatoria en la seguna mitad de la pista
  • SONIDOS, sonidos de impacto sonido de resbalar sonido de motor, sonido al ganar sonido al comienzo

Seguramente este código le va a servir a alguien.

Sin mas palabras, aquí la descarga.

Para jugar a este juego sin compilar el código, es decir, desde los binarios que están en la carpeta “BIN RELEASE” si no tienes Visual Studio instalado, deberás instalar Microsoft XNA Redistributable Framework.

Recuerda que si te sirvió, o si lo mejoraste, por fa vor deja un comentario!

Ante cualquier duda, aquí estoy para responder.

PD: En el menú principal dice, “Presiona F13 para comenzar” es una broma, hay que apretar ENTER para comenzar. El auto luego se maneja con las flechas de dirección.

Firmware para DSO Nano by Lordblacksuca

DSO Nano Firmware

Descripción:

El firmware incluye todos las virtudes del firmware oficial versión 2.5e  ademas de algunas de las caracteristicas del firmware de Paul en su version 1.5.2

Para destacar en mi firmware:  En primer lugar, un rediseño de la interfaz de usuario casi total, mucho mas intuitivo, además agregue un menu tipo popup para cambiar algunas opciones, hubo un cambio en el aspecto grafico, le agregue unos colores y los cursores y cosas importantes, resaltan mas.

Más informacion sobre este osciloscopio: http://www.diegosucaria.info/review-osciloscopio-digital-portable-dso-nano-dso201/

ScreenShot vers. 1.3

FIRMWARE:

http://www.diegosucaria.info/dso-nano-201-firmware-by-lordblacksuca/

Review Osciloscopio Digital Portable DSO Nano (DSO201)

DSO Nano – DSO201

Un osciloscopio digital de 100 dolares!!!

Caracteristicas Generales:

Pantalla 2.8″ Color TFT LCD
Resolución 320×240
Colores del Display
65K
Ancho de Banda Analógico
0 – 1MHz
Frecuencia de Muestreo Max
1Msps 12Bits
Profundidad de Memoria
4096 Point
Sensibilidad Horizontal
1uS/Div10S/Div (1-2-5 Step)
Posición Horizontal adjustable with indicator
Sensibilidad Vertical 10mV/Div10V/Div (with ×1 probe)
0.5V/Div100V/Div (with ×10 probe)
Posición Vertical adjustable with indicator
Impedancia de Entrada
>500KΩ
Voltaje Maximo de Entrada 80Vpp (by ×1 probe)
Acoplamiento DC
Disparador (Trigger)
Auto, Norma, Single, None and Scan
Funciones: Automatic measurement: frequency, cycle, duty, Vpp, Vram, Vavg and DC voltage
Precise vertical measurement with markers
Precise horizontal measurement with markers
Rising/falling edge trigger
Trig level adjustable with indicator
Trig sensitivity adjustable with indicator
Hold/run feature
Señal de Prueba
Built-in 10Hz1MHz (1-2-5 Step)
Guarda Capturas de Pantalla
SD card
Comunicación con PC via USB
como lector de tarjetas SD
Actualización de Firmware Mediante un bootloader
Alimentación USB Bateria de 3.7V de Lithio Recargable  / USB
Tamaño
105mm X 53mm X 8mm

Review propia:

Primero, les cuento una impresión general sobre el aparato, y después veremos el tema del firmware, tarjetas SD, origen etc.

Andaba buscando precios de Osciloscopios digitales en Mercado libre, cuando encontré este equipito. Inmediatamente me puse a buscar información sobre el, i un par de videos en YouTube y me decidí a comprarlo.

El equipo es bastante aceptable, muy pequeño, tanto que me sorprendió cuando me llegó.

Es muy sencillo de utilizar, aunque para utilizarlo a full,  tuve que buscar el manual que dejo al final de la entrada.

En primer lugar,  cuando lo compre en mercado libre, salia como Osciloscopio DSO-Nano.   Si uno pone eso en Google, lo primero que sale es el de SeedStudio. que es una pagina de una empresa de USA que hace todo tipo de cosas electrónicas. Me lleve una sorpresa cuando en la parte de atrás, el osciloscopio decía, e-Design, entonces, me di cuenta que no era el de SeedStudio, ya que el de esta ultima empresa trae su logo impreso en la parte de atrás.

La única información que encontré en Google sobre e-Design es que es una empresa China…   así que no pude leer mucho mas de lo que el traductor de Google quizo traducir. Al principio me encontraba decepcionado, pero luego de un momento, debo decir que la copia resulto ser mejor que el original.

En primer lugar, el equipo de SeedStudio, el DSO-Nano:

  • Se tiene que ensamblar a mano.
  • Trae un conector de audio de 3.5mm
  • Las puntas del osciloscopio son de las muy chotas.

Mientras, que el equipo de e-Design, DSO201:

  • Ya viene ensamblado
  • Trae un conector del tipo de los GPS o antenas de celular
  • Trae una punta de Osciloscopio “Muller” (bastante buena)
  • Trae el firmware de Paul ya instalado (ya hablaremos de eso)

Hasta el momento, el hardware en cuanto rendimiento, es igual en ambos, ya que usan exactamente los mismos componentes, solo tiene ventaja el equipo chino, en cuanto a los accesorios.

En cuanto al Software:

El primer manual que conseguí, era del firmware oficial de SeedStudio, y claro, no entendía nada porque mi equipo no tenia ese firmware así que paso a explicar:

En el sitio http://code.google.com/p/dsonano/downloads/list van a encontrar el firmware OFICIAL del equipo.  Si bien este sitio es el de SeedStudio, los procesos de actualización y el firmware andan para cualquiera de los dos equipos tanto el chino como el original.

El firmware que trae “La Copia” es el de “Paul” un chino que hizo su propio firmware, pero que no lo dejo abierto, es decir, no disponemos del código fuente para modificarlo, lo que es muy lamentable porque realmente esta muy bueno.

Para actualizar el firmware de los equipos se puede utilizar el soft DfuSe, que tambien lo van a encontrar aca

Básicamente hay 2 tipos de firmwares para destacar..

En 1er lugar, tenemos el firmware oficial, que es open source, es bastante tedioso de manejar, aunque es muy bueno.

En 2do lugar, tenemos el firmware de paul que NO es open source, pero es muy muy facil y practico.

Ambos se pueden instalar en cualquiera de los dos dispositivos.

Acá, les dejo algunos links:

Firmware Oficial v2.4

Firmware de Paul v1.5.20p

Tutorial sobre como upgradear el firmware

Manual del Firmware de Paul

Notas Varias:

Sencillamente, el firmware de Paul es el mejor.

A la derecha, una imagen de como se ve el dispositivo con este firmware.

Es muy practico e intuitivo de usar.  Hasta ahora no he podido grabar las capturas en la tarjeta de memoria, probé con una Kingston de 2GB sin suerte, pero como leí por ahí que tenia que ser de menos de un GB, compre una SanDisk de 256MB usada, pero sigo sin poder grabar.

Edito: solo pude grabar con el firmware original de SeedStudio, todavía no he podido hacerlo con el firmware de Paul. Aunque estoy considerando en modificar el ultimo firmware original a mi gusto…

El Osciloscopio DSO Nano, obviamente no reemplaza un Osciloscopio digital de 1000 dolares, pero sin duda que es una herramienta muy útil a la hora de hacer troubleshooting a la mayoría de equipos de electrónica, también trae un generador de onda cuadrada de frecuencia ajustable que es bastante útil.

Espero que este review le sirva a alguien.

Saludos!

Volviendo a Ubuntu 9.10 Karmic Koala

Después de algún tiempo de estar probando Ubuntu 10.04, he vuelto a Ubuntu 9.10, que a mi entender, es mejor.

Ubuntu 9.10

Con la versión 10.04, tuve problemas para instalar flash, los graficos con mi tarjeta nvidia eran malisimos, super lentos, la mayoria de los programas que tenia instalados daban errores….  y  para agravar la situacion definitivamente no me gusta el color. (si si, ya sé que se puede cambiar)

Un aspecto que voy a extrañar de la versión más reciente son los bordes redondeados de las ventanas y los menús desplegables..  si bien en la 9.10 están bastante logrados, sin duda en la 10.04 son mejores.

El “CLICK” que me llevó a cambiar la versión de ubuntu en mi laptop fue por lo siguiente:

Al cambiar el disco rígido de mi notebook y clonar las particiones, obviamente se dañó el grub…  entonces, me pregunte a mi mismo…  ¿Deseo recuperar el grub para seguir usando algo que no me gusta, o vuelvo a instalar la 9.10?  y bueno, me tome unos 25 minutos, y me cambie de nuevo a la version 9.10 de este SO que tanto me gusta.

IE Tab Plus, La solución al ver paginas hechas para IE en Firefox

Se acuerdan de IE tab? ésa extencion de firefox, fue la primera en embeber una ventana de internet explorer en firefox, desde la version 1.3 del mismo…

Ésto es muy útil cuando entramos a paginas que “Solo se pueden ver con IE”. Lamentablemente, al dia de hoy, en donde Firefox es el segundo explorador más utilizado, todavía hay paginas que son incompatibles con él. Al decir, incompatibles, me refiero a que si se ven, pero no se pueden usar de forma correcta.

El ejemplo más claro es con las camaras IP. para poder ver una camara, a travez de la interface web, ésta instala un complemento ActiveX en Internet Explorer, y éste se encarga de hacer todo el trabajo. Otro caso es en las páginas en donde hay calendarios o formularios, que solo sirven para IE.

Hasta este punto todo bien, el problema surge cuando se libera la version 3.0 de firefox, el complemento IE Tab, dejó de funcionar.

Recientemente, encontre este otro complemento, (de otro desarrollador) que hace exactamente lo mismo, y de la misma forma:

ietabplus(Click en la imagen para descargar)

Si bien, existen otros complementos como Coral IE tab, nunca me gustaron, porque no trabajan del mismo modo que este que aqui les presento.

IE Tab Plus, se usa de la misma forma que IE Tab, al instalarlo, aparece un pequeño icono de firefox en la esquina inferior derecha, al hacerle click, simplemente, abre la ventana en un IE embebido en firefox!

Tambien hay otras opciones, como filtros de url, sincronizacion de cookies, etc, pero eso esta todo perfectamente explicado en la pagina del Add-On.

Saludos!

Cambios en el Blog

El blog se ha subido al tren de la “sociabilidad”

Ahora, debajo de cada post, encontraran links para compartir el post en su red social favorita, como Facebook, Twitter o Digg, ademas, está tambien la opcion de imprimir el post.

En la barra de la derecha, se añadieron unos iconos, que te permiten seguirme en Twitter, Facebook, o a traves del RSS del blog.

Ahora, debajo de cada post, tambien  se incluye una lista con los enlaces a los “Post Relacionados”. Algo, que para mi es muy util, por eso lo implemente.

Tambien, se añadió la opcion de usar comentarios tipo Trheads, entonces, sera mas facil seguir conversaciones entre distintos usuarios, solo basta con hacer click en el boton “Responder” debajo de cada comentario, para responder a ése comentario especificamente.

Se activo a modo de prueba el mod Akismet, para eliminar comentarios spam, (tengo 10 comments spam por dia mas o menos) . Si funciona bien, no hará falta mi aprobación por cada comentario, por lo que podrá haber mas fluides en las charlas.

Todo esto es para hacer sentir mas comodos  a los lectores.

Saludos!!

Hamachi en linux. (Ubuntu Server) Solución

Actualizado el 17/7/10

Despues de varias horas de investigacion, encontre que NO hay una “solucion”…   que haga que todo funcione 100%, pero logre hacerlo andar a un 90% al menos.

Logmein, no ha invertido nada en seguir desarrollando  hamachi para linux. Es el segundo producto de logmein al que le hacen esto, logmein para windows mobile, deja de funcionar a partir del 6.5

Bien, mas alla de todo eso,  vamos al grano.

El problema es que siguiendo la instalacion de hamachi como en este tutorial: http://www.supware.net/HamachiUbuntuHowto/ al principio anda todo bien, se conecta y todo, pero si desde una red externa tratamos de acceder, vemos el server pero no podemos hacer ping, ni conectarnos por ssh, ni nada. inclusive a veces aparece como “conectando”  y se queda asi permanentemente…

Probe con softwares como OpenVPN y Neorouter que hacen cosas parecidas (VPN) pero no me convencieron.

entonces, opte por reinstalar hamahi, con una interfaz grafica, con un script que anda dando vueltas pro ahi… para mi sorpresa, la interfaz grafica, soluciono los problemas…  la verdad no se porque la instalacion convencional no funcionaba…. pero este script si funcionó.

Para instalar hamachi con interfaz grafica solo basta con los siguientes pasos:

sudo apt-get remove hamachi
Esto es solo si teniamos instalado hamachi, para desinstalarlo.

Y ahora descargamos el script, le damos permisos de ejecucion, y lo ejecutamos

wget http://webupd8.googlecode.com/files/hamachi-install-ubuntu-1.0.2
sudo chmod +x hamachi-install-ubuntu-1.0.2
sudo ./hamachi-install-ubuntu-1.0.2

Si todo andubo bien, con solo poner hamachi-gui en la linea de comandos, se ejecutara hamachi con la interfaz grafica antigua de windows.

Cabe aclarar que para correr esta interfaz hace falta algun servidor X. Yo tengo FluxBox que es muy liviano y anda muy bien.

SOLO me queda una sola ccosa… el unico problema es que cuando se corta la conexion a internet, no se vuelve a reconectar automaticamente.

Si alguien sabe como solucionar eso, bienvenido sea!!

Actualización:  entontré, este script, en computarz.blogspot.com que es un watchdog para hamachi, es decir, este script mantiene al hamachi online!!!

Lo modifique un poco para que andubiera bien en Ubuntu Server, el script es el siguiente:

[cc lang=”bash”]

#!/bin/bash

scriptname=”`basename \”$0\”`”

function command_pids {

IFS=’

RES=””

for p in `ps xo pid,command | grep “$1″`; do

IFS=’ ‘ hampid=( $p )

pid=${hampid[0]}

if [ “.`basename ${hampid[1]}`” == “.hamachi” ]; then RES=”${RES} $pid”; fi

done

echo $RES;

}

function hamachi_force_terminate {

hamachi stop >/dev/null

sleep 1

for ham_pid in $( command_pids hamachi ); do

kill -9 $ham_pid

done

}

hamachi_running=1

if [ `echo $( command_pids hamachi ) | wc -w` -eq 0 ]; then

hamachi_running=0;

#echo “count not detect running hamachi”

fi

if [ `ip r | grep default -c` -lt 1 ]; then

# No internet gateway, exiting!

exit 1

fi

hamachi_online=`hamachi list | egrep ‘\* [0-9]’ | awk ‘{print $2}’`

count_unreachable=`hamachi list | egrep ‘x [0-9]’ | wc -l`

ping_ok=1

for IP in $hamachi_online; do

ping -c 2 $IP >/dev/null

if [ $? -ne 0 ]; then

echo “ping $IP failed!”

hamachi list | grep $IP

ping_ok=0;

fi # if first ping fails then ping is not OK!

break;

done

if [ $hamachi_running -ne 1 -o $count_unreachable -gt 0 -o $ping_ok -eq 0 ]; then

echo “restarting hamachi: running $hamachi_running unreachable $count_unreachable ping $ping_ok”

if [ `pgrep tuncfg | wc -l` -eq 0 ]; then sudo /sbin/tuncfg; fi

hamachi_force_terminate

hamachi start

CNT=1;

echo -n “Logging in… ” ;

while [ `hamachi login | grep -c failed` -eq 1 -a $CNT -lt 100 ]; do

echo -n “$CNT “;

let CNT=$CNT+1;

sleep 2;

done;

sleep 2;

echo

hamachi get-nicks

#else

#echo “hamachi is online”

fi

[/cc]

Este script se encarga de todo, simplemente lo añadimos a cron para que se ejecute cada x tiempo y le damos permisos de ejecución:

sudo chmod 777 hamachi_watchdog.sh
sudo crontab -e

Seleccionamos un editor y añadimos

*/5 * * * * $HOME/hamachi_watchdog.sh

Siendo por supuesto hamachi_watchdog.sh el nombre y $HOME la ruta de nuestro script!!

Tambien hay que añadir una linea en visudo, para que el tuncfg funcione sin sudo es decir sin necesitar permisos root para que lo pueda ejecutar cron correctamente, entonces hacemos:

sudo visudo

y añadimos la linea:

%admin ALL=NOPASSWD: /sbin/tuncfg

Con eso el script funciona a la perfeccion.

Saludos