Hallo liebes Delphi-PRAXIS-Forum,
ich habe ein Problem mit Threads...
Habe mir eine SIP-Telefon-Klasse geschrieben, welche mit verknüpften Events/Methoden arbeitet
Delphi-Quellcode:
SIP_Client := TSIPclient.Create(aOwner);
SIP_Client.OnRegistration := OnRegistration;
SIP_Client.OnCall := OnCall;
SIP_Client.OnAnswer := OnAnswer;
SIP_Client.OnBye := OnHangup;
die Methoden habe ich innerhalb meiner Telefon-Klasse dann neu definiert.
Die Events werden immer bei der entsprechenden Aktion ausgelöst. (z.B.: Wenn man auflegt, wird OnHangup() ausgelöst usw...)
Wenn ich meine Telefon-Klasse aufrufen will funktioniert das im Regelfall so:
Telefon := TTelefon.Create(Self, Server, User, Pass);
Dabei ist
aOwner
(vom Typ
TComponent
) mein
Self
, dass ich im Konstruktor von
TTelefon
mit gebe.
Funktioniert super in "normalen" Klassen.
Jetzt wollte ich mein Telefon innerhalb eines
TThread
Createn aber wenn ich
Telefon := TTelefon.Create(TComponent(Form_Main), Server, User, Pass);
(Mit
.Create(TComponent(Self), ...)
gehts auch nicht) mache, dann werden die verknüpften Events nicht ausgelöst. Weiß jemand warum?
In Form_Main hat es wieder funktioniert. Nur nicht aus dem Thread heraus.
Würde mich freuen, wenn jemand eine Lösung für mein Problem wissen würde!