Delphi5: Konsolenanwendung + Events? IndyB16?

Hi!

Also mein Problem ist folgendes:

interface
procedure Init();

var
Socket: TIdTCPServer;

implementation

Procedure Init();
Begin
Socket := TIdTCPServer.Create(nil);
Socket.OnConnect := ???
end;


Wie kann ich dieses Event vom Indy-TCPServer auf eine Prozedur / Funktion zuweisen? Besser wenn ihr mir gleich den Source umschreiben würdet!

Vielen Dank!!!

Hi Bluescreem!

Begin
Socket := TIdTCPServer.Create(nil);
Socket.OnConnect := ???
end;

Wie kann ich dieses Event vom Indy-TCPServer auf eine Prozedur
/ Funktion zuweisen?

Ganz einfach indem Du es tust :wink:! Was Deinem Quelltext fehlt, ist lediglich eine Prozedur, welche Du zuweisen kannst. Die Parameterliste dieser Prozedur muß genau(!) mit der Typdefinition des OnConnect-Events der TIdTCPServer-Klasse übereinstimen (ich hab keine Ahnung, wie die aussieht, also bitte selbst in der Hilfe nachschauen). Diese Prozedur fügst Du irgendwo „oberhalb“ der „Socket.OnConnect := …“-Anweisung in den Programmcode ein. Wenn Du diese Prozedur z. B. „BeiSocketConnectTueDies“ titulierst, dann lautet Deine Anweisung

Socket.OnConnect := BeiSocketConnectTueDies;

Probier’s aus – es funktioniert. Ansonsten kann ich Dir empfehlen, ein gutes Delphi-Buch zur Hand zu nehmen (z. B. „Delphi 5“ von E. Warken, Addison Wesley) und bei „Zuweisung von Event-Handlern zur Laufzeit“ nachzulesen. Da findest Du dann noch mehr Infos dazu.

Mit freundlichem Gruß
Martin