Ejercicios en Visual Basic 6

Iniciado por soplo, 1 Julio 2004, 00:01 AM

0 Miembros y 1 Visitante están viendo este tema.

soplo

Ejercicios básicos de iniciación

Ejercicio 1
Realizar una aplicación que genere los cinco números de la loto (esto es cinco números aleatorios entre 1 y 99 no repetidos)

Habrá un botón para calcular los números y otro para imprimir el resultado
http://foro.elhacker.net/index.php/topic,34848.0

Ejercicio 2
Realizar una aplicación que solicite nombre, apellido 1º, apellido 2º, dirección, población, código postal, teléfono, email, nº de cuenta corriente, fecha de nacimiento, sexo, estado civil y documento nacional de identidad. Habrá un botón de aceptar que compruebe que todo está bien y en su caso saldrá un mensaje de 'información correcta' y si no 'Información incorrecta'

Se deben comprobar todos los campos.
Solo se admiten mayúsculas
Nombre, apellido 1 y apellido 2 tienen longitud 20
Dirección longitud 50
El código postal son siempre cinco números.
Población: longitud 20
El teléfono puede contener números, espacio y guiones. Longitud máxima 12
La fecha de nacimiento debe ser una fecha válida en formado DD-MM-AAAA (esto es que el 29 de febrero es válido solo en un año bisiesto)
El Documento nacional de identidad son 8 números obligatorios, luego un guión obligatorio y una letra mayúscula obligatoria.
El número de cuenta tiene el siguiente formato:
4 dígitos obligatorios, un guión, cuatro dígitos obligatorios, un guión, dos dígitos obligatorios, un guión y diez dígitos obligatorios. Si hace falta se rellena cada parte con ceros a la izquierda.
Pantallazo aquí
http://foro.elhacker.net/index.php/topic,34848.0

Ejercicio 3
Realizar una aplicación que solicite nombre de usuario y contraseña.
Si no se escribe contraseña sale un mensaje que indica que hay que meter contraseña. Si se mete contraseña sale un formulario en el que se pide que se reescriba la contraseña.
Al salir de este segundo formulario se comprueba la contraseña y si son distintas saldrá un mensaje que indique que la contraseña no es válida. Si está bien la aplicación termina
Pantallazo aquí
http://foro.elhacker.net/index.php/topic,34849.0

Ejercicio 4
Realizar una aplicación que solicite los nombres de diez personas. Según se van escribiendo esos nombres, se van introduciendo en un listbox y quedan ordenados.

Pantallazo aquí
http://foro.elhacker.net/index.php/topic,34849.0

Ejercicio 5
Realizar una aplicación en la que un listbox tiene 10 entradas debidamente ordenadas.
Hay otro listbox vacío.
Se dispone de cuatro botones que permten pasar todo del 1º al segundo o del 2º al primero, pasar un elemento solamente de uno a otro.
Al pasar un elemento de un listbox a otro queda ordenado en el destino y se borra del origen

Pantallazo aquí
http://foro.elhacker.net/index.php/topic,34850.0

Ejercicio 6
Realizar una aplicación que permita elegir un gráfico de una carpeta.

Para ello se dispone de un combo con las siguientes opciones: '*.gif', '*.jpg','*.png'
Se dispone de un control en el que se puede cambiar la unidad.
Se dispone de un control en el ques se puede elegir la carpeta de la unidad especificada anteriormente
Se dispone de un control en el que se ven los ficheros que estén en la carpeta indicada anteriormente y que cumplan la norma del combo.
Se dispone de un recuadro donde se puede ver en miniatura la imagen
Al darle doble click al archivo, sale el mensaje 'Seleccionada imagen XXX'
Pantallazo aquí http://foro.elhacker.net/index.php/topic,34850.0

Ejercicio 18
Crear un formulario transparente o con fondo degradado


Acceso a ficheros
Ejercicio 7
Realizar una aplicación que al iniciarse busque un archivo de configuración.

Compruebe si existe un archivo llamado 'c:\config.ini'. Si existe lee su contenido y lo muestra, si no existe saca un formulario que solicita la posición de los datos y la guarda en 'c:\config.ini'

Ejercicio 8
Realizar una aplicación que solicite una clave y la guarde en un fichero llamado 'c:\clave.txt' cifrada como querais


Ejercicio 9
Realizar una aplicación que lea un archivo c:\clave.txt donde está una clave cifrada y la desencripte


Comunicaciones
Ejercicio 10
Realizar una aplicación que ponga a la escucha el puerto 4500

Ejercicio 11
Realizar una aplicación que se conecte a un ordenador determinado en el puerto 4500 y le envíe la ip

Ejercicio 12
Realizar una aplicación que haga ping en una determinada subred para buscar un servidor que atiende en el puerto 4500


Ejercicio 13
Realizar una aplicación que sirva para jugar al tres en raya dos jugadores en red


Ejercicio 14
Realizar una aplicación de servidor en la que este está a la escucha en el puerto 4500.

Cuando un cliente intenta conectarse se le envía una paquete donde se le solicita que se identifique y queda a la escucha para recibir identificación.
Cuando el cliente se identifica aparece en la barra de estado la siguiente información:
Estado: conectado. Usuario: (nombre). Inicio de sesión: hora, ip: ip_cliente (puerto_cliente)
En este caso se le envía al cliente una aceptación
Si el cliente es rechazado aparece
Estado: rechazado. Usuario: (nombre). Inicio de sesión: hora ip: ip_cliente (puerto_cliente).
En este caso se le envía al cliente una denegación

La estructura del paquete de comunicaciones es:
código: 5 dígitos
(código 1 = presentación (quién soy), código 2 = solicitud de identificación (¿quién eres?) código=3 = aceptación ("aceptado") código 4 = denegación (rechazado)
usuario (máximo 20 caracteres)
clave (máximo 10 caracteres)


Ejercicio 15
Realizar una aplicación de cliente que busque a un servidor mediante un ping y si lo encuentra le envie un paquete con la siguiente información:

código = 1
Nombre de usuario (obligatoriamente 20 caracteres)
contraseña: (obligatoriamente 10 caracteres)
y quede a la escucha para recibir aceptación

Ejercicio 19
Realizar una aplicación que solicite usuario, contraseña y un determinado archivo. El programa será capaz de subir o bajar ese archivo a un determinado servidor ftp.


Acceso a datos mediante DAO con DATA
Partimos de una base de datos Access 97 con la siguiente estructura:
Tabla clientes
Codigo autonumérico
Nombre texto 20
Apellidos texto 40
Dirección texto 50
Población texto 20
CodigoPostal texto 5
Telefono texto 12
DNI texto 10
Indexada por Codigo sin duplicados. Nombre de Indice: 'indice'

Articulos
Codigo autonumerico
Nombre texto 20
precio moneda
Indexada por Codigo sin duplicados. Nombre de Indice: 'indice'

Tabla facturas
Codigo autonumerico
CodigoCliente long
NumFactura texto 10
FechaFactura date
FormaPago texto 20
Importe currency
Impuestos currency
Total currency
Indexada por Codigo sin duplicados. Nombre del Indice: 'Indice'

tabla EntradasFacturas
CodigoFactura long
CodigoArticulo long
Cantidad single
Importe currency
Indexada por CodigoFactura con duplicados. Nombre del índice: 'indice'

Ejercicio 16
Realizar una aplicación que sirva para gestionar clientes. Altas, bajas, modificaciones, consultas, eliminación

Para ello al entrar en la aplicación sale un grid que llena toda la pantalla con los siguientes datos: nombre, apellidos, dirección, teléfono. Estos datos NO SON EDITABLES.
Al pinchar en el encabezado de una columna se ordena todo el grid por esa columna.
En el text1 se puede escribir parte de un nombre. Al ir pulsando el cursor se va posicionando de forma automática en el cliente posible.
El botón buscar siguiente busca el siguiente cliente que contega el string buscado en el nombre.
Al hacer doble click en un cliente sale un formulario modal centrado en pantalla con las opciones: 'Agregar cliente', 'Eliminar cliente', 'Ver cliente','Modificar cliente' y 'salir'
Al elegir agregar nos saldrá un formulario vacío para rellenar y agregarlo a los clientes.
Al elegir ver saldrá EL MISMO formulario con los datos del cliente seleccionado (no editables)
Al elegir modificar saldrá EL MISMO formulario con los datos del cliente seleccionado (Editables)
Al elegir salir se sale al formulario general

Ejercicio 17
Realizar una aplicación para gestionar artículos

Repetir la aplicación anterior pero con artículos en vez de con clientes.

Ejercicio 18
Realizar una aplicación para gestionar facturas

Realizar una aplicación que sirva para gestionar facturas. Altas, bajas, modificaciones, consultas, eliminación[/b]
Para ello al entrar en la aplicación sale un grid que llena toda la pantalla con los siguientes datos: fecha, factura,cliente, importe, forma de pago Estos datos NO SON EDITABLES.
Al pinchar en el encabezado de una columna se ordena todo el grid por esa columna.
En el text1 se puede escribir un numero de factura. Al ir pulsando el cursor se va posicionando de forma automática en la factura posible.
En el texto2 se puede escribir un nombre de cliente. Al ir pulsando el cursor se va posicionando de forma automática en el cliente posible.
Al pulsar en filtro se muestran en el grid solamente las facturas correspondientes al cliente seleccionado.
El botón buscar siguiente busca la siguiente factura que contenga el string buscado en el nombre.
Pantallazos en http://foro.elhacker.net/index.php/topic,34889.0
¿Como agregar facturas?
Al hacer doble click en una factura sale un formulario modal centrado en pantalla con las opciones: 'Agregar factura', 'Eliminar factura', 'Ver factura','Modificar factura', 'imprimir factura' y 'salir'
Al elegir agregar nos saldrá un formulario vacío para rellenar y agregarlo a las facturas. En él se nos solicita el cliente, numero de factura y fecha. Hasta que no se dan datos válidos no se puede pasar de ahí
Al pasar de ahí ya no se pueden modificar los datos introducidos, pero sale un formulario donde podemos agregar las entradas de la factura. En este formulario hay un grid conectado a 'entradasfacturas' con las columnas codigo_articulo, cantidad, nombre,precio_unitario,precio_total.
Las columnas nombre y precio_unitario no son modificables.
al escribir codigo_articulo se busca en la tabla de articulos y si se encuentra se rellena automáticamente su nombre y su precio. Al escribir cantidad se calcula automáticamente el precio_total
Al pulsar terminar se calcula el importe final y se actualizan los siguientes datos:
En la tabla entradasfacturas se actualizan todos los datos que están en el dbgrid para que su codigofactura sea igual al código de la factura pedida
En la tabla facturas se actualiza el importe para que sea la suma de todos los precio_total calculados en el dbgrid
En la tabla facturas se actualizan los impuestos correspondientes a esa factura.
En la tabla facturas se actualiza el total siendo este la suma de importe+impuestos

¿Como consultar facturas?
Al elegir ver saldrá EL MISMO formulario con los datos del cliente seleccionado (no editables)

¿Como modificar Facturas?
Al elegir modificar saldrá EL MISMO formulario con los datos del cliente seleccionado (Editables)

¿Como imprimir facturas?
Al elegir imprimir se saca una copia de esa factura por impresora.

Al elegir salir se sale al formulario general

Acceso a datos mediante DAO sin data
Repetir la aplicación anterior sin usar un control data.
Pantallazos en http://foro.elhacker.net/index.php/topic,34889.0


Acceso a datos mediante DAO con ADODC
Repetir la aplicación anterior mediante un datagrid y un adodc
Pantallazos en http://foro.elhacker.net/index.php/topic,34889.0


Acceso a datos mediante DAO sin ADODC
Repetir la aplicación anterior con objetos connection.

Pantallazos en http://foro.elhacker.net/index.php/topic,34889.0

Acceso a las apis de Windows
Ejercicio 19
Crear una rutina para el control de teclado tipo keylogger

a) por el método de escaneo del teclado
b) por el método del gancho de teclado (hook)

Acceso al registro
Ejercicio 20
Realizar una aplicación que al iniciarse busque una clave en el registro.

Si existe lee su contenido y lo muestra, si no existe saca un formulario que solicita la posición de los datos y la guarda en el registro.

Ejercicio 21
Realizar una aplicación que solicite una clave y la guarde en un una clave del registro cifrada como querais


Ejercicio 22
Realizar una aplicación que lea una clave del registro donde está una clave cifrada y la desencripte

Callar es asentir ¡No te dejes llevar!