Einzelnen Beitrag anzeigen

Gargamel

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

UDP Broadcast: Fehler bei OnUDPRead

  Alt 22. Okt 2012, 11:50
Hi

Ich habe mir eine Klasse geschrieben, um UDPBroadcast zu verwenden. Wenn ich nun dem UDPServer das OnUDPRead-Event zuweisen will, erzeugt der Compiler folgende Fehlermeldung:

E2010 Inkompatible Typen: 'array of Byte' und 'System.TArray<System.Byte>'


Als Hilfe hier noch die Klasse:

Delphi-Quellcode:
TUDPBroadcast = class
  strict protected
    udpClient:TidUDPClient;
    udpServer:TidUDPServer;
    Port:integer;

    BroadText:string;

  public
    constructor Create(thePort:integer);
    destructor Destroy(); override;

    procedure UDPServerRead(Sender: TObject; AData: TidBytes; ABinding: TIdSocketHandle);
    procedure sendBroadcast();
    procedure sendBroadcastEx(bc_text:string);
end;

constructor TUDPBroadcast.Create(thePort:integer);
begin
  BroadText:='irgendwas';
  Port:=thePort;

  udpClient:=TidUDPClient.Create;
  udpClient.Active:=false;
  udpClient.BroadcastEnabled:=true;
  udpClient.Port:=Port;
  udpClient.Active:=true;
  udpClient.ReceiveTimeout:=2000;


  udpServer:=TidUDPServer.Create;
  udpServer.Active:=false;
  udpServer.Name:='UDPServer1';
  udpServer.DefaultPort:=Port;
  udpServer.OnUDPRead:=UDPServerRead; // hier meckert der Compiler

  udpServer.ThreadedEvent:=true;
  udpServer.Active:=true;
end;
  Mit Zitat antworten Zitat