![]() |
Paquetes Recibidos UDP
Buenas, tengo una aplicación que escucha por un puerto UDP. La escucha la realiza correctamente y me llega el paquete, pero no se transformar el paquete que me llega a texto. Según el proveedor de la aplicacion manda un paquete con un tamaño de 264 bytes con estas especificaciones:
Los paquetes de datos enviados por SUTIL son del tipo UDP, siempre tienen 264 bytes de tamaño, y constan de los 3 siguientes campos: – IDENTIFICADOR: Siempre debe contener 4 bytes ceros. – TAMAÑO: (entero LSB de 4 bytes) es el tamaño del campo CONTENIDO en bytes. – CONTENIDO: (cadena de 256 caracteres) contiene la cadena que se quiere enviar terminada con un byte cero (al estilo del lenguaje C), se rellena hasta los 256 car. con caracteres sin especificar. Lo que quiero es quitar los 8 primeros Bytes que no me interesan y coger los siguientes, pero no se como poder hacerlo. Si alguien se le ocurre algo que me ayude por favor. Saludos. |
No especificaste el componente que estas utilizando, pero creo que la mayoría de los mismos retorna en un puntero los datos recividos... en tal caso lo que debes hacer es guardar el paquete en uns estructura y acceder a los datos desde el tercer miembro del mismo.
dependiendo del componente tambien pedes leer del buffer primero los 8 bytes y luego el resto;
Saludos |
Perdon uso UDPServer de las Indy.
Voy a probarlo ahora mismo. Saludos y gracias por la rapidez en la respuesta |
Hola, he probado lo que me comentas, pero con el componente TUDPSocket de la paleta Internet, no recibo nada.
Con el componente Indy recibo paquetes pero no consigo pasarlos a Texto, estoy desesperado. seguire mirando por ahi. Saludos |
Hola Rockin:
Puedes pasarme la aplicación con el componente que te funciona a mi correo o puedes escribir el código aqui, creo que puedo ayudarte a resolver tu problema. Saludos, JuanPa1. |
Gracias, pero ya lo resolví.
Saludos |
La franja horaria es GMT +2. Ahora son las 03:21:18. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi