PDA

Ver la Versión Completa : IdTCPServer, tipo de lectura


hermes_32
01-12-2005, 13:13:14
Hola a todos,

estoy probando el envío en una intranet de mensajes y ficheros, mediante los componentes TidTCPServer y TidTCPClient. Los clientes envían al servidor y éste se encarga de repartir a los demás clientes.

Bueno eso da igual, el problema y por tanto la pregunta es si hay manera de saber de antemano el tipo de dato que recibe el Servidor en el evento OnExecute, ya que puedo recibir tanto Strings (enviado por un cliente con WriteLn(mensaje)), o Streams (enviado como WriteStream(UnStream)).

Y digo esto porque si recibo un String y lo intento leer como Stream : Athread.connection.ReadStream...pues me casca. Y si recibo un Stream y lo intento leer como string : Athread.connection.readln(), pues también me casca...

Si hay manera antes de hacer la lectura del Hilo de saber qué tipo de información voy a leer pues sería una solución...

Ya se que estais pensando en

Try
Athread.connection.ReadStream(UnStream,-1,True);
Except
UnString := Athread.connection.Readln();
end;


Casca igual...

Un saludo.

FideRosado
26-05-2015, 04:56:53
yo tambien tengo problemas al leer los mensajes que envio de forma ObjectOutputStreamdesde una app en android, y los datos que envio estan en un mensaje simple
(data1+data2+data3)
ahora lo complicado es leer u obtener el mensaje porke no son del mismo tipo, ahora si leemos el stream entrante y lo convertimos en una string creo yo que si se pueda usar como queremos y saber cual es el comando o mensaje que enviamos remotamente.,
si tienes alguna respuesta a tu tema o a este, repondeme..

aca te dejo un referente al tema que yo tengo

http://www.clubdelphi.com/foros/showthread.php?t=88357