Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Cabecera UDP (https://www.clubdelphi.com/foros/showthread.php?t=62038)

Rockin 02-12-2008 13:16:14

Cabecera UDP
 
Buenas tengo un pequeño problema con el envío de paquetes UDP, usando las Indy.

Tengo que mandar la cabecera con la siguiente información:

4 bytes con el numero 0.
4 bytes con un numero entero LSB con la longitud de la cadena que voy a enviar.

A continuación los datos.

Lo estoy haciendo de la siguiente manera:

Código Delphi [-]
UDPClient.Send('0000001403C,' + sesion + ',1,0');

Pero la aplicación interpreta todo como una cadena de caracteres y no interpreta los 8 primero bytes como cabecera.

He estado buscando en el foro en google y probando con varios componentes pero no consigo establecer la cabecera con el formato bueno.

Si alguien me puede ayudar se lo agradezco de ante mano.

Saludos.

white_zombie 02-12-2008 14:55:45

Hola, lo interpreta todo como una cadena de caracteres porque el metodo send es para enviar strings, prueba con sendbuffer.

Sendbuffer es facil de usar, puedes enviar un array de bytes con la composicion que quieras, debes indicar en numero de bytes que envias en el telegrama.

Un Saludo.

Rockin 02-12-2008 17:02:20

Al final lo he conseguido de la siguiente forma:

Código Delphi [-]
var
        Buffer: array [0..255] of Char;
begin
StrLCopy(buffer,Pchar('0000002203C,' + sesion + ',1,0'),22);
                 UDPClient.SendBuffer(buffer,SizeOf(buffer));

Saludos


La franja horaria es GMT +2. Ahora son las 19:53:53.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi