Mirando la sección de Visual Basic del foro, que por cierto hacía tiempo que no entraba, me ha dado por subir mis códigos fuente de programas que puedan, más o menos, resultar interesantes y, que he fui haciendo para aprender.
http://www.megaupload.com/es/?d=9OIT3BMU
Mirror: http://www.filefactory.com/file/1cae14
A continuación explico el contenido del .RAR y para qué hace cada proyecto:
Proyecto 1: Winsock
Este proyecto muestra como utilizar el control ActiveX Winsock para la comunicación entre cliente y servidor. Para la demostración simplemente hay 3 funciones: Conectar al servidor, Mandar un MsgBox al servidor y Cerrarlo.
Proyecto 2: Editor Resident Evil PC
Este fue mi primer proyecto completo en Visual Basic, pero lo modifiqué para ser publicado. Es un editor para partidas salvadas del videojuego Resident Evil 1 para PC, que me hice para uso propio.
Está poco documentado, pero demuestra el uso de la función "Open" en forma binaria y de manera optimizada.
Proyecto 3: cifra Texto
Es un simple algoritmo de cifrado que utiliza como base de cifrado del texto la ip que se introduce.
Simplemente utiliza una suma por cada byte.
Proyecto 4: Heroes IV
Si habéis jugado al videojuego Heroes IV, y también habéis utilizado los trucos, os acordaréis la de veces que había que insertar un mismo código para conseguir algo.
Pues este programa automatizaba ese proceso.
Para los que no habéis jugado a este juego, os explico que este programa lo que hace es escribir una cadena de caracteres repetidas veces utilizando el método SendKeys de Visual basic.
EDITO: Para utilizarlo, pulsar la tecla F9 cuando está el Cuadro de Texto Seleccionado.
Proyecto 5: BaNenKy's WordPad
Un WorPad como el de windows pero inacabado por dos razones:
1- La función deshacer no funciona correctamente.
2- El panel de opciones está por terminar.
Los menús de Archivo, Edición... tienen la apariencia como las del Office 2003.
Nota: La barra de menús es una implementación de otro autor.
No me doy a conocer como autor del control ActiveX. El resto del programa si que ha sido escrito por mí.
Proyecto 6: Proyecto GenExe
Este quizá, es el proyecto que más me gusta.
Su función es coger cualquier archivo, generalmente un ejecutable, y lo convierte a una función en un módulo, con el contenido en hexadecimal del archivo ejecutable dentro del módulo.
Así, lo único que hay que hacer para generar el ejecutable es llamar a la función GenerarExe("NombreArchivo.exe").
Claro que esto lo hice antes de que se me ocurriera que en el mismo ejecutable generado se puede juntar otro archivo.
Proyecto 7: Ventana con Skin
Este proyecto muestra cómo crear una ventana personalizada. Se puede incluir en el proyecto con poco código, incluso modificarlo a tu gusto. Tan sólo hay que copiar la matriz de controles que hay en el formulario, en el caso de un command button.
Lista de MODULOS que fuí creando o recopilando:
NOTA: Si el módulo es una clase, hay que tratarlo como un objeto y crear una instancia para él. Antes de usarlo, por ejemplo en un commando buton, creamos el objeto con:
Dim NuevoObjeto As New clsClase
clsClase.FuncionPublica()
En caso contrario, simplemente para utilizarlo hay que llamar a las funciones públicas.
BuscarTexto.bas - Una simple función que busca una cadena dentro de otra, y devuelve la posición.
CARPETA: ARCHIVOS
modKillMe.bas - Cierra el programa que se ejecuta y lo elimina utilizando un bat creado por el programa.
CARPETA: ENCRIPTACIÓN
Base64.bas - Funciones para el cifrado y descifrado de textos en BASE64.
BlowfishCrypt.bas - Funciones para el cifrado y descifrado de textos mediante el algoritmo BlowFish
cifrado Atbash.bas - Funciones para el cifrado y descifrado de textos con el algoritmo AtBash.
MD5.bas - Función para la generación del hash MD5. Llamar a la función Hash = CalculateMD5("Texto") para utilizarlo.
CARPETA: Matematicas
Calculadora.bas - Funciones matemáticas básicas para números muy largos. No he probado el máximo, pero más de 200 digitos seguro.
CambioBase.bas - Convierte un número de cualquier base a cualquier base. Por ejemplo, de base 10 a base 16 o de base 10 a base 36.
DNI.bas - Cálculo de la letra del DNI. Útil si estás programando un programa de contabilidad, y necesitas que te haga esta función.
NumerosPrimos.bas - ¿Es el número introducido primo?
CARPETA: Windows
Acciones con archivos.bas - Llamada a las API's de windows para COPIAR y BORRAR un archivo.
clsScreenCapture.cls - Función que hace una llamada a las API's de windows y realiza una captura de pantalla para guardarla en un archivo de formato BMP.
Editor Archivos INI.bas - Funciones para el control de los archivos INI.
Editor Registro .bas - Funciones para el control del registro de windows mediante llamadas a las API's de windows.
FormSiempreVisible.bas - Función para activar el primer plano de un formulario, para que de esta manera, siempre sea visible.
IconSystemTray.bas - Funciones simples para el control de la barra de tareas de windows, e introducir un icono de tu programa en él.
MenuBitmap.bas - Función para poner iconos en la barra de menús de tu formulario con solo 3 llamadas a las API's de windows.
modProcesos.bas - Un módulo con funciones que hice hace tiempo para el control de los procesos. Obtiene la lista de los procesos que se están ejecutando actualmente y tienes la posibilidad de cargártelos con otra llamada a la API de windows.
OverMousePicture.bas - Este módulo controla cuando el ratón está encima de cualquier control o PictureBox. (Utilizado en el Proyecto 7).
PintarFormDegradado.bas - Mítica función para hacer un degradado como fondo en un formulario, tipo de los programas de instalación de hace varios años.
¡Un saludo! Y espero que os sea útil.