Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Den Port von TIdTCPServer zur Laufzeit ändern (https://www.delphipraxis.net/63370-den-port-von-tidtcpserver-zur-laufzeit-aendern.html)

Win32.API 17. Feb 2006 18:10


Den Port von TIdTCPServer zur Laufzeit ändern
 
Sers,
ich habe einen TIdTCPServer in meinem Chat Programm, den Port kann auch über TIdTCPServer.DefaultPort ändern, wenn ich aber den Server auf Active := true gestellt habe kann ich den Port nicht mehr ändern, obwohl ich Ative vorher auf false gestellt habe.
DefaultPort gibt mir zwar den "neuen" Port zurück ,aber wenn man versucht auf den alten Port zu connecten, geht das nochimmer.
Woran kann das liegen? :gruebel:



greetz

supermuckl 17. Feb 2006 18:13

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
server.active := false;
server.defaultport := 1337;
server.active := true;

wenn das letzte fehlschlägt, ist der port schon belegt

Win32.API 17. Feb 2006 18:20

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
Danke fuer die Antwort.
So habe ich das auch probiert ,aber es geht nicht ...
Wenn ich das Programm neustarte kann ich den Port ändern, aber wenn der Server einmal Active war gehts nicht mehr. :wall:

greetz

TKC 18. Feb 2006 00:53

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
Wenn ich mich richtig erinnere musst du das über die bindings machen.

retnyg 18. Feb 2006 01:43

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
am einfachsten wirds wahrscheinlich sein, wenn du den Server zur Laufzeit mit Create erstellt, und bei änderung des ports beendest und neu initialisierst

Win32.API 18. Feb 2006 09:36

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
Danke ,
habe ich auch schon dran gedacht , aber ich dachte es gibt eine einfachere/bessere Lösung.


greetz

Thorben77 18. Feb 2006 10:33

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
Morgen.

Setz' mal vor (oder danach, bin mir nicht sicher) die Zeile, in der du den DefaultPort zuweist ein MyIdTCPServer.Bindings.Clear, das sollte helfen.

MfG

inherited 18. Feb 2006 10:58

Re: Den Port von TIdTCPServer zur Laufzeit ändern
 
Zitat:

Zitat von supermuckl
server.active := false;
server.defaultport := 1337;
server.active := true;

Heee den Port benutze ich schon :wink:
ernst beiseite, ääääh anders, egal:
Es kann sein das wenn du bindings.clear machst er wärend du es über delphi startest an der stelle eine Fehlermeldung ausspuckt, die aber nicht auftritt wenn du die Compilierte exe aufrufst, also davon nicht abschrecken lassen^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:37 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