Einzelnen Beitrag anzeigen

Benutzerbild von cheatzs
cheatzs

Registriert seit: 31. Aug 2003
Ort: Altenburg
81 Beiträge
 
#4

Re: Stream Read Error bei TMemoryStream.Seek

  Alt 10. Aug 2004, 17:08
Delphi-Quellcode:
    ActClient^.ReceiveStream.Seek(0,soFromBeginning);
    ActClient^.ReceiveStream.Read(cReceiveLength,SizeOf(Cardinal));
    ActClient^.ReceiveStream.Read(wCommandID,SizeOf(Word));
    ActClient^.ReceiveStream.Seek(SizeOf(Word)+SizeOf(Cardinal), soFromBeginning);
    ActClient^.DataStream.CopyFrom(ActClient^.ReceiveStream,ActClient^.ReceiveStream.Size-(SizeOf(Word)+SizeOf(Cardinal)));
    ActClient^.DataStream.Position := 0;
Wie du sehen kannst, stelle ich die Position des ReceiveStream vorher auf die gewünschte Position, sodass niemals der zu kopierende Bereich fehlerhaft sein kann(zu groß oder zu klein).
Thomas Low
THX und viel Spaß beim Coden
Cheatzs
  Mit Zitat antworten Zitat