Array
(
)

Socket Buffer Sendtext

Xisto
   - 02 nov 2005

So preciso de um exemplo simples (do tipo que a gente olha e diz: entao era só isso? hehehe)

Quero saber como usar sendbuff, que to apanhando que nem um condenado.

Ficar passando string de 255 em 255 nao rola.
Via String (sendtext) passo e recebo tranquilo.


Firekiller
   - 03 nov 2005

Qual tipo de dados você tá querendo enviar??
Por exemplo, se fosse o conteúdo de uma Stringlist, poderia ficar assim:

ClientSocket.Socket.SendBuf( StringLIst.Text , Length(StringList.Length) );

Para receber, coloque o código abaixo no evento onClientRead (ou onRead) :

#Código


var
tm : Integer;
s:String;
begin
StringList.Text := ´´;
tm := Socket.receiveLength;
while tm > 0 do begin
Socket.ReceiveBuf(S,tm);
StringList.text := StringList.text+S;
tm := Socket.receiveLength;
Sleep(200);
end;
end;


Ao terminar o laço, você já teria recebido todo o conteúdo do StringList.


Firekiller
   - 03 nov 2005

Desculpe... no código que postei tem uma falha... ionde tá

ClientSocket.Socket.SendBuf( StringLIst.Text , Length(StringList.Length) );

Coloque:

ClientSocket.Socket.SendBuf( StringLIst.Text , Length(StringList.Text) );