May 262021
 

Dos juegos realizados en Excel. El primero es juego que lo vi realizado con tablitas de madera y me dio ganas de hacerlo en Excel, la verdad si bien me dio trabajo programarlo es más difícil lograr el objetivo del juego, en YouTube hay un par de tutoriales pero eso seria como ir derecho a la trampa, así que les dejo este desafío para pasar el rato (yo no logré resolverlo)

El objetivo del juego es bajar la ficha naranja en la parte inferior tal como muestra el cuadro de solución, las piezas se mueven con el mouse.

TRABADO2.png

El segundo lo copie de un juego del móvil, no esta completo, tiene solo algunos niveles, pero fue mas que nada para sacarme las ganas de hacerlo.

En este el objetivo es armar el bloque superior con las partes inferiores, un rompecabezas por así decirlo.

Triangle.png
May 082021
 

Otro proyecto del baúl de los recuerdos, con muchas actualizaciones. Se trata de un módulo para obtener las contraseñas guardadas por los navegadores web, si bien hay un rejunte de código de diferentes autores el que más puedo citar es «Cobein» quien fue el creador de la base de este módulo. Ahora bien esto fue mucho tiempo atrás y muchos métodos de encriptación han cambiado desde entonces, por lo que hubo que actualizar gran parte para que siga funcionando. Tiene soporte para los 5 navegadores mas utilizados en el mercado:

  • Google Crome
  • Microsoft Edge
  • Firefox
  • Opera
  • Internet Explorer

Además también puede obtener el historial de navegación, ahora si preguntan que utilidad tiene esto, pues puede ser útil para exportar contraseñas a un pendrive, para alguna auditoria de navegación mediante su historial (naa mentira es para hacking), yo lo tomo como un juego a encontrar el como descifrar el acertijo.

En cuanto a lo técnico, utiliza sqlite3.dll. Todos menos Internet Explorer almacenan sus contraseñas en esas bases de datos, Firefox con el paso de los tiempos migró a JSON, un dato curioso que al menos a mi me sorprendió tanto Chrome, Ms Edge y Opera utilizan Blink por lo que me vale decir son los tres iguales, todos almacenan sus contraseñas de la misma forma y con la misma encriptación, misma estructura, mismo historial, sólo cambian las ubicaciones y nombres de las BD pero es la misma metodología.

La mayor bronca que me quedó es que no pude encontrar la forma posta de descifrar cómo lo hace Firefox realmente, el método que se utilizó en este caso es haciendo una llamada a una dll del mismo FF pero el problema es que en sistemas de x64 bits no funciona debido a que nuestro querido VB6 es de x32, pero bien hay mucha información de cómo descifrar mediante los métodos de encriptación que utiliza, sólo que ya no me da el cuero para tanto, si les interesa aquí está toda la información.

Para Internet Explorer puse un módulo aparte y el módulo del historial ni lo incluí en el proyecto ya que hoy en día el historial se borra ni bien se cierran IE y bien como ya es de conocimiento público este ha pasado a mejor vida.

Agradecimiento especial a wqweto

Password Revealer1.png Password Revealer2.png
Mar 222021
 

Este es el reproductor musical que había mencionando en el post anterior
donde se mostraba cómo implementar el diseño Neomorfismo (Neumorphism Design) en vb6, en este proyecto se aplicó un ejemplo funcional del mismo. El diseño en si esta copiado de esta imágen.

Para el motor de reproducción se utilizó bass.dll y uno de sus complementos bass_fx.dll muy recomendable echarle una mirada a toda esta suite de librerías que cuentan con ejemplos para vb6.

Si bien al principio iba a hacer algo sencillo después se me dió por hacer algo bien completo donde se implementaron algunas características como: leer desde una lista de reproducción, líneas de comando, arrastrar y soltar, editor de etiquetas, ecualizador, display animado, vista previa en la barra de tareas, manejo con teclado y bueno seguramente muchas muchas cosas me estarán faltando, lo cual algunas podré agregar más adelante si me las sugieren.

En cuanto a la lista de reproducción no recomiendo cargar más de 300 canciones ya que la forma en que armé el control de lista es muy limitado porque utiliza controles en vez de métodos gráficos, pero bien creo que con 300 canciones es un número respetable.

La aplicación es 100% portable con soporte a Unicode

neumoplayer1.png neumoplayer2.png neumoplayer3.png neumoplayer4.png
Descargar Proyecto
Descargar Binario + un Mp3 de mi banda «Viento Rojo»
May 042020
 

En este caso se trata de otra Api de Google con la que podes hacer gráficos interactivos de distintos tipos, cuando digo interactivos sólo me refiero a que tienen un pequeño efecto al pasar el mouse sobre los distintos trazos del gráfico. Si bien esto está pensado más para páginas web, puede sernos útil en casos puntuales, en ese punto cada quien decide si le es para suyo. El usercontrol internamente crea un WebBrowser para invocar a esta Api. Cuenta con soporte para DPI. De más está decir que requiere internet para cargar el gráfico; también aclaro que como yo lo propuse no está pensado para cambiar los datos en tiempo real, es decir se carga el gráfico con los datos y no se puede modificar sus rangos, para ello es necesario volverlo a cargar todo. Les recomiendo descargarlo y echarle un vistazo a cómo funciona.

Requerimientos:
– Internet Explorer 11
– Conosimiento del API de Google Charts

GoogleCharts1.png
GoogleCharts2.png
GoogleCharts3.png

 Posted by at 0:03
Mar 172020
 

Hola, se trata de un módulo clase que sirve para automatizar whatsApp por medio del Navegador MS Edge + Javascript y VB6 a travez de web.whatsapp.com , no sé si es el caso pero creo que se puede llamar web scraping, este tipo de técnica no suelen durar mucho ya que si WhatsApp cambia parte del contenido html de su web este módulo puede quedar inservible, es para disfrutarlo mientras dure, luego si hay cambios tendrás que buscar la manera de actualizarlo.

Esto puede ser muy útil si se sabe aprovechar, podemos leer y
enviar mensajes de texto, obtener lista de contactos, números telefónicos, foto de perfil y otras.

Es importante aclarar que este módulo requiere Windows 10 y MS Edge (html version) aclaro de html version ya que en estos días Microsoft ha actualizado MS Edge a una versión que utiliza el motor de Chromium, y este no se puede automatizar, la versión clásica de MS Edge utilizaba el motor de Internet Explorer, por eso es que se puede automatizar, el motivo de utilizar Edge y no Internet Explorer es porque éste último no es aceptado por Web.Whatsapp.com, la versión de Chromium aún no es una actualizacion global de windows pero seguramente con el tiempo sea global, no se preocupen se puede volver a la versión html , siguiendo estos pasos como ven pueden tener ambas versiones si así lo desean. ACLARO NO REQUIERE SELENIUM

En la descarga se incluye el módulo y un pequeño ejemplo de uso (recalco es sólo un ejemplo no tiene utilidad alguna), a modo de comentario he realizado un aplicativo utilizando este módulo que sirve para solicitar turnos mediante whatsapp, aún no sé si lo voy a publicar, este funciona mediantes comandos de palabras, algo así como una inteligencia artificial pero de muy muy bajo nivel 🙂 en donde el cliente solicita un turno, la aplicación verifica si está disponible, lo almacena en una base de datos y le envía un mensaje que su turno ha sido reservado.

Para el ejemplo he utilizado un OCX, deben registrarlo (con permisos de administrador); utilice el ocx porque como muchos nombres y palabras utilizan caracteres unicodes lo que incluye los Emojis, si utilizan los controles comunes de vb estos se verían mal e inclusive no funcionaria bien la aplicación.

WhatsApp.png

 Posted by at 18:37
Feb 142020
 

Antes que nada quiero aclarar que este control está basado el proyecto Firenze Label, adaptado a GDI+ con muchos agregados ya que el anterior depende de vbRichClient5.
Tienen muchas propiedades y eventos que más adelante voy a ir detallando, por el momento voy a subir el control con unos cuantos ejemplos y otros controles que acompañan.
Se pueden lograr cosas muy lindas con este control, sólo es cuestion de ir jugando con sus propiedades, se puede crear muchos controles a partir de este label es cuestión de poner un poco de imaginación. Aclaro que no actúa como un control programado, es un label no un botón por lo que está en el desarrollador dar la forma en que se repinta el label cuando se dispara el mouse Down y Up y demás eventos.

Algunas capturas de lo que se puede lograr con el LabePlus LabelPlus.png

LabelPlus.png

LabelPlus.png

LabelPlus.png

LabelPlus.png

DESCARGAR VERSIÓN 1.5.2

 Posted by at 13:25