![]() |
Indy Server Stoppen
nabend,
ich habe da so ein Problem/Frage: wie kann man ein activen TIdTCPServer von den Indy Komponenten wieder stoppen? also wenn man jetzt ihn aktiviert wartet er auf Verbindungen, wie kann ich das wieder stoppen? mit
Delphi-Quellcode:
kommt ein error wenn ich die Anwendung wieder beende/den Server so stoppe:
server.Active := fasle
Terminate Thread Timeout PS: und wenn jemand schon verbunden ist und ich es so stoppe kommt es zu Zugriefsverletzung auf adress 0000000 |
Re: Indy Server Stoppen
Installiere mal die Indy9 Komponenten statt den Indy10ern. Diese Fehler treten öfters bei der 10er Version auf.
Florian |
Re: Indy Server Stoppen
Hallo
Hatte solche Probleme auch öfters. Habe das jetzt gelöst, indem ich die Clientverwaltung selbst in die Hand nehme. (Speichere sozusagen jeden Client-Thread in nem Array). Um den Server zu beenden gehe ich jeden Client einzeln durch, trenne dessen Verbindung, setze am Ende ein Delay (ca. 1500ms) und dann setz ich active auf false. Sollte es eine bessere Lösung geben würde mich diese auch sehr interessieren PS: Deswegen Indy9 zu installieren halte ich nicht für sehr sinnvoll. Bei denen hatte ich auch des öfteren Probleme. Zudem bietet Indy10 auch einige neue Features ;) |
Re: Indy Server Stoppen
ich habs ;)
Delphi-Quellcode:
functioniert einbahnfrei ;)
{///////////////////////::::::C O N N E C T::::::////////////////////////}
procedure Tmain.menu_connectClick(Sender: TObject); var i:Integer; begin {connection to the server} if server.Active then begin i:=main.MDIChildCount; while main.MDIChildCount > 0 do begin main.MDIChildren[i].Free; i := i-1; end; server.Active := False; main.menu_connect.Caption := 'Connect'; end else begin server.DefaultPort := ini.ReadInteger('Server', 'Port', 1984); server.Active := true; main.menu_connect.Caption := 'Disconnect'; end; end; PS: habe Indy 9 |
Re: Indy Server Stoppen
Zitat:
Delphi-Quellcode:
for i:= main.MDIChildCount downto 1 do
main.MDIChildren[i].Free; Zitat:
oder gibt es den ausdruck und ich weis nichts davon? :oops: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz