Ver Mensaje Individual
  #1  
Antiguo 28-04-2010
jplj jplj is offline
Miembro
 
Registrado: oct 2003
Posts: 189
Reputación: 23
jplj Va por buen camino
Thumbs up TIdTCPClient - Conocer cuanto hay en el bufer.

Hola:

Tengo algo similar a:
Código Delphi [-]
... FClient:= TIdTCPClient; ... // En el Execute de un Hilo while FClient.InputBuffer.Size > 0 begin
FClient.ReadStream(FStream, x); ...
end; ...

Lo que pretendo es ir leyendo fragmentos del bufer.
En primer lugar consulto si hay datos con InputBuffer.Size, pero siempre me devuelve 0 la primera vez, sin embargo si hago una lectura previa de, por ejemplo 1 byte, si me devuelve un valor correcto.

Realizo una comprobación previa con InputBuffer.Size, porque si realizo una lectura sobre un bufer que esté vacío, se produce una excepción y se cierra el cliente, cosa que quiero impedir.

Uso Delphi 7 / Indy 9

Muchas gracias de antemano.
__________________
Sonríe. Mañana puede ser peor.
Responder Con Cita