Historial de los últimos códigos añadidos

Listado de los últimos códigos introducidos.
Imágen de perfil

PING EN ANSI C, BAJO LINUX.


C/Visual C

Publicado el 21 de Mayo del 2022 por Hilario (10 códigos)
106 visualizaciones desde el 21 de Mayo del 2022
/*
*****************************
PING EN ANSI C, BAJO LINUX.
****************************
otroping.c
*****************************************************
Hilario Iglesias Martinez
*****************************************************
El ejemplo lo forman, el ejecutable con main otroping.c
y otroping.h, los dos ficheros deberán estar bajo
el mismo directorio.

COMPILAR.
$ gcc otroping.c -o otroping
****************************************************
EJEMPLO DE EJECUCION
sudo ./otroping www.mipagina.com
***************************************

ICMP, el Protocolo de control de mensajes de Internet (Control Message Protocol ),
un protocolo de la capa de red, utilizado habitualmente para obtener información
informativa de un host determinado. Consiguiendo así en las señales de retorno,
basicamente la situación activa o inactiva del host.
A lo largo de su historia, utilizado también para floodear o inundar
de peticiones un host determinado. Es de recordar, por ejemplo,
aquellos incipientes programas de mensajería como el protocolo IRC,
sin ningún tipo de salvaguardia, con aquellas bromas de nukear
determinados usuarios de un canal.
Hoy día con aún utilizado para generación de mensajes
de error o control de flujo malicioso. En este caso el
objetivo es doble, degradar el servicio de red con la
inundación de peticiones y/o conseguir que los sistemas
receptores quede inutilizados por no poder procesar todas
las peticiones que les llegan, en
denegación de servicio. (Deny Of Service, DOS)
***************************************************************************
El programa ejemplo que expongo para uso educativo, es un extracto de
varias utilidades obtenidas en internet, modificadas por mi para
resultar mas esclarecedoras y educativas. El programa tiene un
flodeo intensido y continuo. El programa admite la modificación
de parámetros, para su nueva compilación o prueba.
******************************************************************
El progroma se ejecutará bajo consola Linux, y con privilegios de ROOT.
Fue adaptado y realizado en plataforma LINUX Ubuntu 20.04.4 LTS.
Bajo el standard ANSI C.-C-11
Usado el IDE Sublime Text.
Forma de compilación: gcc archivo.c -o archivo
Cuestiones o dudas a: [email protected]
Adaptado según.
Network Working Group
RFC: ICMP- 792
*****
Una salida típica por consola de linux debería ser:
************************************************
4 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13375 ttl=64 rtt = 0.043117 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13376 ttl=64 rtt = 0.038719 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13377 ttl=64 rtt = 0.038763 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13378 ttl=64 rtt = 0.038819 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13379 ttl=64 rtt = 0.038608 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13380 ttl=64 rtt = 0.038917 ms.
64 bytes from (null) (h: 192.168.0.27)(192.168.0.27) msg_seq=13381 ttl=64 rtt = 0.038339 ms.

*****************************************
otroping.h
*********************************
EJEMPLO DE UNA CABECERA ICMP DE RETORNO
-Destino Inaccesible-
****************************
Postel

RFC 792 Protocolo de Mensajes de Control Internet


Mensaje de Destino Inaccesible ("Destination Unreachable Message")

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Tipo | Código | Suma de Control |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| sin usar |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cabecera Internet + 64 bits de datos del datagrama original |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Campos IP:

Dirección de Destino

La red y dirección del origen extraídos de los datos del datagrama
original.

Campos ICMP:

Tipo

3

Código

0 = red inaccesible;

1 = "host" inaccesible;

2 = protocolo inaccesible;

3 = puerto inaccesible;

4 = se necesitaba fragmentación pero DF estaba activado;

5 = fallo en la ruta de origen.

Suma de Control

El complemento a uno de 16 bits de la suma de los complementos a
uno del mensaje ICMP, comenzando por el Tipo ICMP. A la hora de
calcular la suma de control, el valor inicial de este campo es
cero. Esta suma de control puede ser sustituida en el futuro.

Cabecera internet + 64 bits de Datagrama de Datos

*/
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic
Actualizado

Reproductor de música (nueva versión).


Python

Actualizado el 17 de Mayo del 2022 por Antonio (63 códigos) (Publicado el 31 de Mayo del 2021)
5.485 visualizaciones desde el 31 de Mayo del 2021
Programa para reproducir archivos de audio que incorpora la posibilidad de crear una lista de favoritos.
El programa necesita de un archivo "json" que se generará al ejecutarse por primera vez.
Esta versión incorpora la posibilidad de reproducir secuencialmente la lista de favoritos, para ello se usará el botón "PLAY ALL" (dicha reproducción se podrá finalizar igualmente con el botón "STOP").
PARA CUALQUIER DUDA U OBSERVACIÓN USEN LA SECCIÓN DE COMENTARIOS.
mpr
Imágen de perfil

LLAMADA A LA FUNCIÓN FORK ()-


C/Visual C

Publicado el 15 de Mayo del 2022 por Hilario (10 códigos)
160 visualizaciones desde el 15 de Mayo del 2022
Utilizamos la funcion de llamada fork,
bajo un bucle multiplicativo for.
La llamada al sistema de bifurcación se usa para
crear un nuevo proceso, que se llama proceso
secundario, que se ejecuta simultáneamente
con el proceso que realiza la llamada a la bifurcación ()
(proceso principal). Después de que se crea un nuevo
proceso secundario, ambos procesos ejecutarán la
siguiente instrucción después de la
llamada al sistema fork(). Un proceso hijo usa la
misma computadora (contador de programa),
los mismos registros de CPU, los mismos archivos
abiertos que usa el proceso padre.
ATENCION.
*********
Su ejecución continuada bajo consola de Linux
puede, en algunos casos..., ENLENTECER el
ordenador. Se ruega no ejecutar durante tiempo
excesivo. Para salir bajo consola linux
utilizar las teclas CONTROL C.
****************************************
Imágen de perfil

DIRECCIONES DE MEMORIA


C/Visual C

Publicado el 14 de Mayo del 2022 por Hilario (10 códigos)
199 visualizaciones desde el 14 de Mayo del 2022
/* DIRECCIÓNES DE MEMORIA
*************************
Ejemplo sencillo de aprendizaje
Correspondencia entre las direcciones de memoria
y cada letra de una frase cualquiera en un array.
Imágen de perfil

DUDAS SOBRE PUNTEROS


C/Visual C

Publicado el 13 de Mayo del 2022 por Hilario (10 códigos)
117 visualizaciones desde el 13 de Mayo del 2022
DUDAS SOBRE PUNTEROS.
*********************
Resolviendo dudas sobre punteros
y direcciones de memoria. Sencillo
programa que apunta a elementos
numéricos individuales, con sus
respectivas direcciones de
memoria.
Imágen de perfil

TRABAJO CON FUNCIONES


C/Visual C

Publicado el 8 de Mayo del 2022 por Hilario (10 códigos)
205 visualizaciones desde el 8 de Mayo del 2022
Pequeño ejemplo de trabajo con funciones
modificando un códico con el fin de pasar
por referencia matrices simples a través de una
función declarada. Con el fin des su aprendizaje, aunque el
código es simple y nada complejo, hacemos una librería
que llamamos en el fichero C, que contiene
la inicialización main.
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Reproductor de música.


Python

Actualizado el 5 de Mayo del 2022 por Antonio (63 códigos) (Publicado el 20 de Abril del 2021)
10.917 visualizaciones desde el 20 de Abril del 2021
Programa para reproducir archivos de audio que incorpora la posibilidad de crear una lista de favoritos.
El programa necesita de un archivo "json" que se generará al ejecutarse por primera vez.
PARA CUALQUIER DUDA U OBSERVACIÓN USEN LA SECCIÓN DE COMENTARIOS.
mp
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Buscador de archivos mediante expresiones regulares (nueva versión)


Python

Publicado el 5 de Mayo del 2022 por Antonio (63 códigos)
218 visualizaciones desde el 5 de Mayo del 2022
Programa para buscar archivos mediante expresiones regulares.
COMANDOS:
cbd <dir> cambia el directorio base.
sch <string> realiza búsqueda por el sistema de carpetas a partir de la carpeta base.
cl realiza limpieza de pantalla.
help muestra lista de comandos.
q finaliza programa.

PARA CUALQUIER DUDA U OBSERVACIÓN, USEN LA SECCIÓN DE COMENTARIOS.
ff43
ff42
ff41
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Aplicación para ocultar información de texto en imágenes o fotografías (nueva versión).


Python

estrellaestrellaestrellaestrellaestrella(1)
Actualizado el 23 de Abril del 2022 por Antonio (63 códigos) (Publicado el 26 de Marzo del 2021)
5.881 visualizaciones desde el 26 de Marzo del 2021
Aplicación para codificar y decodificar mensajes de texto en imágenes.

La imagen se selecciona mediante el botón "SEARCH".
En el modo "Encode" el texto a ocultar se introduce en el espacio superior. (el programa generará un nuevo archivo de imagen cuyo nombre tendrá el prefijo "encoded_" delante del título del archivo original.
En el modo "Decode" el texto oculto se muestra en el espacio superior.

PARA CUALQUIER DUDA U OBSERVACIÓN USEN LA SECCIÓN DE COMENTARIOS.
stgp

Repositorio en GitHub:
https://github.com/antonioam82/Steganography
Imágen de perfil

Comprobacion de sintaxis en grupos de correo (RFC)


FoxPro/Visual FoxPro

Publicado el 22 de Abril del 2022 por Baldo (14 códigos)
155 visualizaciones desde el 22 de Abril del 2022
Esta rutina corresponde a una necesidad laboral. Si os sirve pues... ¡ya está hecha!

El asunto es que se puede necesitar un grupo de direcciones de correo electrónico válidas para un envío automatizado (en mi empresa se envian, por ejemplo, los pedidos a proveedor). Correos del tipo [direccion1] [direccion2]... [direccion(n)]...

El verdadero tema es que aunque se podría restringir la entrada a nivel de INPUT, hay que ser especialmente cuidadoso con la corrección en la sintaxis. Además puede que haya que tener presente que distintas rutinas pueden usar distintos separadores (Uso chilkat, por ejemplo, y el separador es "," y no ";"). Para más dificultad, uso direcciones importadas de ficheros externos...

Se hace precisa una rutina que analice el grupo de correos y conforme una cadena correcta, con el separador correcto, de direcciones correctas.

Una expresión REGEX estaría bien. Pero es un tema complicado en demasía. Lo ideal es que se pudieran discriminar direcciones correctas (del tipo [email protected]) sin que se le escape nada (una arroba y un punto al menos, y éste tras la arroba, un dominio de al menos 2 caracteres,ausencia de caracteres especiales...), que además distinga cualquier separador habitual (",",";",[TAB]) y que conforme una lista esperada por nuestra rutina. Es (muy) complicado y tema de petición de ayuda constante (https://stackoverflow.com/questions/4351349/regular-expression-for-delimited-email-address)

VFP es especialmente "plástico" a la hora de tratar cadenas... ¿Por qué no usarlo?)

Por ello he creado esta función:

mail_correcto([cadena],[separador_salida])

Tan simple como parece. Enviamos una cadena, analizamos corrección de los datos y retornamos SOLO LOS EMAIL VALIDOS separados por el [separador_salida].

Lo bueno es que ya nos podemos permitir seguir las estrictas normas (RFC2821 y RFC2822).
Teneis información en: en https://www.jochentopf.com/email/chars.html

La entrada puede tener separadores coma, punto y coma, espacios o [TAB] mezclados. Lo bueno es que al separar sólo correos, textos que me encuentro en ocasiones como "[email protected] (administración)" o similares son parseados correctamente.

Podeis echar un vistazo. Vereis una cadena de "caracteres restringidos" que podeis variar a voluntad si dado el caso (servidor UNIX, uso de caracteres especiales por alguna razón...) no necesitais filtrarlos (yo por defecto hago caso a las recomendaciones de "aunque es válido, mejor no lo uses")

Para el caso de querer simplemente COMPROBAR que los correos incluídos en la cadena son correctos (para avisar a usuario...etc) he incluído una variante que simplemente reporta un .T./.F. si algún correo no es correcto (realmente si alguna palabra no tiene pinta de correo)

mail_correcto_tf([cadena])

Adjunto un Form que simplemente lanza las rutinas para que experimenteis con ellas.

Un saludo.
Screenshot_002
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Lector, por cámara, de códigos "QR"


Python

estrellaestrellaestrellaestrellaestrella(8)
Actualizado el 20 de Abril del 2022 por Antonio (63 códigos) (Publicado el 22 de Abril del 2020)
22.118 visualizaciones desde el 22 de Abril del 2020
El programa tiene como objeto principal, la lectura, haciendo uso de la cámara web, de códigos QR. Para ello, simplemente pulsaremos el botón "INICIAR LECTURA POR CAMARA" (que desplegará el visor de la cámara) y colocaremos el código a leer, delante de la cámara. A su vez, también podremos leer códigos QR, en formato "png" y "jpg" almacenados en nuestra computadora (para lo que usaremos la opción "CARGAR ARCHIVO". Finalmente, también podremos leer, directamente, un código que se encuentre visible en pantalla (botón "DETECTAR EN PANTALLA").

qrcc
qrcm1
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Visor de gráficos financieros (nueva versión)


Python

Publicado el 18 de Abril del 2022 por Antonio (63 códigos)
285 visualizaciones desde el 18 de Abril del 2022
Programa para mostrar el precio de cierre, apertura, máximo y mínimo de las acciones de un activo para un determinado periodo de tiempo. También incluye representación de 'bandas de bollinger' y la media movil de 20 sesiones. Para mostrar la gráfica correspondiente a la información deseada, hacer click en el botón 'SHOW GRAPH'. Para cualquier duda u observación, utilicen la sección de comentarios.
fg
Imágen de perfil

ArrayList diseño


Java

Publicado el 16 de Abril del 2022 por Rafael Angel (8 códigos)
184 visualizaciones desde el 16 de Abril del 2022
Demostracion del uso y diseño del ArrayList
El namespace se lo pone usted mismo.
Solo con la palabra package nombre
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Colector de links


Python

Actualizado el 16 de Abril del 2022 por Antonio (63 códigos) (Publicado el 6 de Marzo del 2022)
534 visualizaciones desde el 6 de Marzo del 2022
Aplicación para guardar accesos directos a internet (que se guardan en un archivo 'json' que se genera al ejecutar el programa por primera vez), mediante la introducción de la URL en la entrada superior (o su copia mediante el botón 'IMPORT NEW LINK'). El nuevo acceso se guarda mediante el botón "SAVE LINK AS:" que abrirá una ventana pidiendo el nombre del nuevo acceso. Una vez guardado el acceso, se podrá acceder a la correspondiente página seleccionando, en la lista, el elemento guardado y clicando en el botón 'ACCESS' (admite selección normal y múltiple). También permite la eliminación la totalidad de los link o solo los seleccionados. También permite la búsqueda por nombre entre los accesos guardados. El botón "SAVE LIST" generará un archivo de texto con los nombres de enlace y sus correspondientes URLs asociadas, que estén almacenados en el archivo JSON.
PARA CUALQUIER DUDA U OBSERVACIÓN, USEN LA SECCIÓN DE COMENTARIOS.
LNKC
Imágen de perfil

Punteros y direcciones de memoria


C/Visual C

Publicado el 12 de Abril del 2022 por Hilario (10 códigos)
235 visualizaciones desde el 12 de Abril del 2022
Un pequeño y sencillo ejemplo que me han pedido, sobre
el tratamiento de punteros y direcciones de
memoria.
HILARIO IGLESIAS MARTÍNEZ
Cuestiones o dudas a: [email protected]
Realizado en plataforma LINUX Ubuntu 20.04.4 LTS.
Bajo el standard ANSI C.-C-11
Usado el IDE Sublime Text.
Compilación: gcc archivo.c -o archivo*/
Imágen de perfil

Area de juego


Java

Publicado el 11 de Abril del 2022 por Rafael Angel (8 códigos)
289 visualizaciones desde el 11 de Abril del 2022
Escenario de un juego rts en java.
No terminado pero he logrado avances,
Sirve de plantilla para implementar cualquier juego, se relaciona con mis anteriores publicaciones en Java.
Imágen de perfil
Val: 4
Ha aumentado su posición en 16 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Editor de Morphing


Java

estrellaestrellaestrellaestrellaestrella(2)
Publicado el 11 de Abril del 2022 por Francisco Javier Rojas Garrido (20 códigos)
122 visualizaciones desde el 11 de Abril del 2022
Aplicación que permite crear vídeos con efecto de morphing.

1-Selecciona la imagen máster.
2-Crea la malla de triángulos.
3-Pon los vértices en la posición correcta de cada imagen.

Tras hacer esto, podrás guardar el proyecto y crear un vídeo de Morphing con el resultado.

Vídeo demostración:
https://frojasg1.com:8443/resource_counter/resourceCounter?operation=countAndForward&url=https%3A%2F%2Ffrojasg1.com%2Fdemos%2Faplicaciones%2Fmorphing%2Fsolo.Modelos.how.to.mp4%3Forigin%3Dlawebdelprogramador&origin=web

Vídeo creado con esta aplicación:
https://frojasg1.com:8443/resource_counter/resourceCounter?operation=countAndForward&url=https%3A%2F%2Ffrojasg1.com%2Fdemos%2Faplicaciones%2Fmorphing%2Fsolo.Modelos.mp4%3Forigin%3Dlawebdelprogramador&origin=web


MorphingEditor.v1.0
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Visor de gráficos financieros.


Python

estrellaestrellaestrellaestrellaestrella(2)
Actualizado el 10 de Abril del 2022 por Antonio (63 códigos) (Publicado el 7 de Julio del 2021)
4.709 visualizaciones desde el 7 de Julio del 2021
El programa muestra información relativa al precio máximo, mínimo, de apertura y cierre de un activo financiero (estos se irán almacenando en el archivo "symbols" que se generará al ejecutar el programa por primera vez) y para un periodo de tiempo. También muestra los gráficos relativos a las medias móviles exponenciales de 50 y 200 sesiones.
PARA CUALQUIER DUDA U OBSERVACIÓN USEN LA SECCIÓN DE COMENTARIOS.
gf
Imágen de perfil
Val: 2
Ha aumentado su posición en 19 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Suavizado de imagen en archivos de vídeo.


Python

estrellaestrellaestrellaestrellaestrella(4)
Actualizado el 31 de Marzo del 2022 por Antonio (63 códigos) (Publicado el 24 de Mayo del 2021)
5.748 visualizaciones desde el 24 de Mayo del 2021
El presente programa se encarga de eliminar el ruido de los fotogramas de un archivo de video empleando la técnica de "filtrado bilateral". El programa realiza el filtrado frame a frame para a continuación generar un nuevo video con la secuencia de frames procesados (aplicando el frame rate del vídeo original). También usa el software "ffmpeg" para copiar el audio del vídeo original y añadirlo al vídeo resultante.

USO: Primeramente seleccionaremos el vídeo a filtrar mediante el botón "SEARCH". Una vez seleccionado iniciaremos el proceso con "START FILTERING" con el que empezaremos seleccionando la ubicación del nuevo vídeo, para a continuación iniciar el proceso (NOTA: La ruta del directorio de destino no deberá contener espacios en blanco). El proceso de filtrado podrá ser cancelado medinate el botón "CANCEL".
PARA CUALQUIER DUDA U OBSERVACIÓN USEN LA SECCIÓN DE COMENTARIOS.

vf
Imágen de perfil

RABAJO CON SOCKETS


C/Visual C

Publicado el 25 de Marzo del 2022 por Hilario (10 códigos)
339 visualizaciones desde el 25 de Marzo del 2022
Funcionamiento de sockets.
Código fuente de un cliente servidor.
/Realizado en plataforma LINUX Ubuntu 20.04.4 LTS.
//Bajo el standard ANSI C.-C-11
//Usado el IDE Sublime Text.
//Compilación: gcc archivo.c -o archivo
//Para prueba en el propio equipo se utiliza host 127.0.0.1
//Se puede hacer prueba en la consola de LINUX
//En una consola se abre el Servidor, en otra se abre el Cliente.
//Puedes probar este Servidor con el CLIENTE adjunto.
//También puedes probarlo con la utilidad TELNET
//abriendos dos consolas Linux.
//entrada_salida.h debe estar en el mismo directorio a la hora de
//compilar con gcc.