TCP/IP ESocketError
-
Ich verwende den C++ Builder4.0 .Im Programm benutze ich für eine TCP/IP-Verbindung die Komponente TServerSocket . Es funktioniert auch seit Jahr und Tag. Nun habe ich zwei neue identische Rechner bekommen. auf einem funktioniert mein Programm nach wie vor bestens, auf dem anderen bekomme ich eine Exception der Klasse ESocketError 'Es kann kein neuer Socket erzeugt werden'.
Wer weiß warum ??
-
Zeig mal Code, das kann nie schaden.
J0
-
Da gibt's keinen Code zu zeigen. Ich habe lediglich einen ServerSocket auf das Formular gelegt und Aktive = true angegeben.
Den Fehler bekomme ich aber auch, wenn ich aktive = false setze und anschließend im Programm ServerSocket1->open() aufrufe.
-
Benutzt du einen bereits verwendeten Port?
-junix
-
Um dieses auszuschließen, habe ich bereits meherere Portnummern ausprobiert.
Auf dem Rechner läuft Windows 2000 und sonst eigentlich nichts. (Wer weiß schon, was ein Windows-Rechner macht, wenn er nichts macht?)
Läßt sich irgendwie herausfinden welche Ports belegt sind ?
-
Google mal nach ´nem Portscanner, der Scannt deinen Rechnern nach geöffneten Ports. Ich glaube das sollte die bezüglich der Ports helfen.
J0
-
Hi,
is bestimmt ne saudumme frage, aber netzwerkprotokolle und so sindschon installiert auf dem rechner und andere anwendungen laufen ? z.b. ein einfaches ping ?
-
Ping funktioniert und der Port ist auf jeden Fall auch frei.
kann irgendeine Windows-Einstellung verhindern, dass ich einen ServerSocket aufmachen kann?
oder benötige ich dazu spezielle Rechte ?
-
Is die exe statisch gelinkt und wenn nicht auf den anderen rechner BCB drauf?
-
Auf beiden Rechnern ist der BCB installiert und ich habe das Programm auf jeden Rechner übersetzt.
Auf dem einen Rechner läuft es weder im Testmodus unter BCB, noch separat.
-
Die Neuinstallation des BCB hat leider auch keinen Unterschied hervorgebracht.
-
Hast du die Anwendung schonmal als Administrator gestartet?
-junix
-
JA, auch das habe ich bereits versucht.
Um den Fehler zu erhalten brauche ich auch ger keine "Anwendung". Ich ziehe lediglich einen Socket auf das Formular und schon erhalte ich beim Übersetzen diesen Fehler.
-
...beim übersetzen?!?
-junix
-
Verzeihung, nicht schon beim übersetzen, sondern erst beim creieren der Socket-Komponente.
-
Sagt doch einfach mal die Fehlernummer von deinen ESocketError, das macht die suche wesentlich leichter.
-
Ich bekomme kein Fehlernummer.
Der Debugger sagt:Im Projekt ... ist eine Exception der Klasse ESocketError aufgetreten. Die Meldung lautet:'Es kann kein neuer Socket erzeugt werden'....
-
Ich kann mir nur vorstellen, dass es irgendwas mit den Windows einstellungen zu tun hat, aber der Rechner funktioniert ansonsten einwandfrei incl. Netzwerk usw., sodass ich nicht weiss, wo ich suchen soll.
-
Eine letzte Idee hab' ich noch:
Vielleicht gibt es ja beim c++Builder irgendwelche Parameter, die falsch eingestellt sind ??