Thema: Delphi Indy TCP Client/Server

Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#10

AW: Indy TCP Client/Server

  Alt 30. Mär 2012, 16:31
Was aber wenn Datasize=2000 aber es sind nur 1496 Bytes im Puffer?
Dann werden bei ReadBytes auch nur 1496 Bytes gelesen.
ReadBytes blockiert bis die gewünschte Anzahl Bytes gelesen wurde, oder ein TimeOut auftritt.

 procedure ReadBytes(var VBuffer: TIdBytes; AByteCount: Integer; AAppend: Boolean = True); virtual; ist eine Prozedur, daher ist der Rückgabewert unproblematisch.

Aber der dritte Parameter ist verdächtig: wenn VBuffer bereits Daten enthält, werden neue Daten angehängt.

Nach ReadBytes sollten die Daten doch bereits in Data stehen, was macht dann diese Zeile?

 Move(Data[0], PByte(Value), SizeOf(Integer));
Michael Justin

Geändert von mjustin (30. Mär 2012 um 17:30 Uhr)
  Mit Zitat antworten Zitat