Einzelnen Beitrag anzeigen

Gargamel

Registriert seit: 19. Mär 2007
171 Beiträge
 
#6

AW: UDP Broadcast: Fehler bei OnUDPRead

  Alt 22. Okt 2012, 14:13
Möglicherweise habe ich den Fehler gefunden. Es scheint, laut anderer User, ein Compiler-Fehler zu sein.

TidBytes = TBytes = array of byte

Der Compiler scheint TidBytes wieder auf array of byte zu reduzieren. Deswegen gab es die Probleme bei OnUDPRead. Nimmt man also statt

procedure UDPServerRead(Sender: TObject; AData: TidBytes; ABinding: TIdSocketHandle);

diese Zeile

procedure UDPServerRead(Sender: TObject; AData: array of byte; ABinding: TIdSocketHandle);

meckert der Compiler nicht mehr.
Allerdings will dann die Funktion BytesToString nicht mehr, da diese TidBytes verlangt. Das habe ich dann so gelöst:

Delphi-Quellcode:
var

idBytes:TidBytes;
num_idBytes:integer;
i:integer;

num_idBytes:=length(AData);
setLength(idBytes, num_idBytes);
for i:=0 to num_idBytes-1 do
   idBytes[i]:=AData[i];
  Mit Zitat antworten Zitat