Forum: Netzwerke
by DeddyH,
6. Jul 2011
Reich doch einfach den Sender durch, das müsste ja die Socket-Komonente sein, die den Fehler meldet.
procedure TDeinForm.OnSocketError(Sender: TObject);
begin
Reconnect(Sender);
end;
procedure TDeinForm.Reconnect(Sender: TObject);
begin
if Sender is TClientSocket then
TClientSocket(Sender).Reconnect;
Forum: Netzwerke
by DeddyH,
6. Jul 2011
Welcher Sender bzw. Socket das war, wird Dir doch übergeben.
Forum: Netzwerke
by DeddyH,
6. Jul 2011
Wie, übergeben? Wenn ein Fehler auftritt, dann sollte der Socket ein Event feuern und die Parameter zur Auswertung bestücken. Ich habe zwar ewig nichts mehr mit den Socket-Kompos gemacht, aber anders sehe ich keinen Sinn in diesem Event.
Forum: Netzwerke
by DeddyH,
5. Jul 2011
Wo sie sich nach dem ersten Aufruf von FindComponent automatisch befindet :roll:
Forum: Netzwerke
by DeddyH,
5. Jul 2011
Ich würde mir eine Zwischenvariable deklarieren, sonst greift man womöglich auf unterschiedliche Komponenten zu, wenn man mal etwas ändert.
var
Sock: TClientSocket;
begin
Sock := FindComponent(SuchString) as TClientSocket;
if Assigned(Sock) then
If not (Sock.active) then
begin
Memo1.Lines.Add(Sock.Name +'<connection failed>');
Sock.Active := true;