Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#9

Re: Komischer Fehler mit TClientSocket

  Alt 18. Sep 2008, 18:26
Hallo,

Ist schon etwas seltsam

Ich habe gedacht man könnte es mal via Stream probieren - und tatsächlich:

Es funktioniert

Delphi-Quellcode:
procedure TForm1.sockRead(Sender: TObject; Socket: TCustomWinSocket);
var
  Stream: TStringStream;
  Buffer : Pointer;
  Len : Integer;
begin
  Len := Socket.ReceiveLength;
  Stream := TStringStream.Create();
  try
    Stream.Seek(0,soFromEnd);
    Buffer := AllocMem(Len);
      try
        Socket.ReceiveBuf(Buffer^, Len);
        Stream.Write(Buffer^, Len);
        ShowMessage(Stream.DataString)
      finally
        FreeMem(Buffer);
      end;
  finally
    Stream.Free;
  end;
end;
Thomas
  Mit Zitat antworten Zitat