AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Findcomponent TclientSocket.active := true setzen
Thema durchsuchen
Ansicht
Themen-Optionen

Findcomponent TclientSocket.active := true setzen

Ein Thema von Pet04 · begonnen am 5. Jul 2011 · letzter Beitrag vom 6. Jul 2011
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#11

AW: Findcomponent TclientSocket.active := true setzen

  Alt 6. Jul 2011, 11:45
Welcher Sender bzw. Socket das war, wird Dir doch übergeben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Pet04

Registriert seit: 26. Sep 2007
86 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#12

AW: Findcomponent TclientSocket.active := true setzen

  Alt 6. Jul 2011, 13:14
von der logig ist mir das alles schon klar.
ich weiß nur nicht wie ich es im quellcode umwandel.

procedure TMainForm.Price_Info_ClientSocketA_Error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);

begin ....

reconnect (Client der den Fehler verursacht hat ) ; ???

end

procedure TMainForm.Reconnect( ????); > (clientsocket)
begin
Timer_PriceInfo.Interval := Pause;
Timer_PriceInfo.Enabled := True;
Memo1.clear;
Memo1.Lines.Add(Price_Info_ClientSocketE.Name +'<attempting to reconnect in '+ IntToStr(Pause) +'ms>')


procedure TMainForm.Timer_PriceInfoTimer(Sender: TObject ???); (Clientsocket)
begin
Timer_PriceInfo.Enabled := False;
try
TClientsocket(FindComponent(Price_Info_ClientSocke tE.Name)).open;
//Price_Info_ClientSocketE.Open;
//Price_Info_ClientSocketE.Active := true;

finally
If not Price_Info_ClientSocketE(Sender).active then ???
// If not (TClientsocket(FindComponent(Price_Info_ClientSock etE.Name)).active) then
//if not Price_Info_ClientSocketE.Active then
begin
Memo1.Lines.Add(Price_Info_ClientSocketE.Name +'<connection failed>');
// TClientsocket(FindComponent(Price_Info_ClientSocke tE.Name)).Active := true;
Price_Info_ClientSocketE.Active := true; ?????
Reconnect;
end;
end;
end;

end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#13

AW: Findcomponent TclientSocket.active := true setzen

  Alt 6. Jul 2011, 13:26
Reich doch einfach den Sender durch, das müsste ja die Socket-Komonente sein, die den Fehler meldet.
Delphi-Quellcode:
procedure TDeinForm.OnSocketError(Sender: TObject);
begin
  Reconnect(Sender);
end;

procedure TDeinForm.Reconnect(Sender: TObject);
begin
  if Sender is TClientSocket then
    TClientSocket(Sender).Reconnect;
end;
So in der Art müsste das doch funktionieren.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#14

AW: Findcomponent TclientSocket.active := true setzen

  Alt 6. Jul 2011, 13:27
@Pet04: Bitte Delphi Tags setzen:
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz