Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Indy 10: Socket Error # 10061 (https://www.delphipraxis.net/68973-indy-10-socket-error-10061-a.html)

richie 8. Mai 2006 21:58


Indy 10: Socket Error # 10061
 
Hallo Allerseits!

Ich hab mir hier im Forum schon einiges durchgelesen, finde aber das Problem bei mir nicht. Es geht wie gesagt um den Socket Error # 10061. Hier mal die vollständige Fehlermeldung:

Zitat:

Im Projekt Client.exe ist eine Exception der Klasse EIdSocketError mit der Meldung 'Socket Error # 10061 Connection Refused.' aufgetreten.
Allerdings kann ich mir das nicht erklären (wer hätte das gedacht :roll: .).
Ich poste mal den Code:

Client

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  IdTCPClient1.Host := '127.0.0.1';
  IdTCPClient1.Port := 85;
  IdTCPClient1.Connect;
  try
    ListBox1.Items.Add(IdTCPClient1.Socket.ReadLn);
  finally
    IdTCPClient1.Disconnect;
  end;
end;

dazu den Server

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  IdTCPServer1.Active := true;
  IdTCPServer1.DefaultPort := 85;
end;

procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
begin
  AContext.Connection.Socket.WriteLn('Hello from Indy TCPServer!');
  AContext.Connection.Disconnect;
end;
Erkennt ihr den Fehler (hoffentlich nicht wieder so ein Schusselfehler wie beim letzten Mal. :oops: )?

richie 9. Mai 2006 20:36

Re: Indy 10: Socket Error # 10061
 
Ich will ja nicht drängeln, aber hat keiner eine Idee? :lol: :?:

Airblader 9. Mai 2006 21:46

Re: Indy 10: Socket Error # 10061
 
Aufgrund diverser Google-Einträge würde ich sagen:

- Der Server läuft in dem Moment schon?
- Auch mal andere Ports probiert?

;)

air

CalganX 9. Mai 2006 21:50

Re: Indy 10: Socket Error # 10061
 
Ich rate einfach mal (sofern Airblader's Vorschlag nichts bringt): Firewall noch an und die blockiert den Port 85?

Chris

richie 10. Mai 2006 17:57

Re: Indy 10: Socket Error # 10061
 
@ Airblader:

1. Ja, der Server läuft in dem Moment. :zwinker:
2. Ja, ich hab auch andere Ports probiert, da kam das selbe Problem.


@ Chakotay1308:

Hab meine Firewall zu Testzwecken ausgeschaltet.



Na toll. Ich hab was gelesen, dass man ErrorCode auf 0 stellen soll, sowas gibt es aber nicht!? :wall: :(

Tommiii 11. Mai 2006 22:05

Re: Indy 10: Socket Error # 10061
 
Hi Richi!

Ich glaub mich zu erinnern dass ich mal dasselbe Problem hatte,
als ich in Indy eingestiegen bin.....
Der Grund liegt wahrscheinlich darin, dass der Server von Grund auf keine Bindungen
anlegt (da ist ihm der "DefaultPort" auch ziemlich egal!)
Darum nimmt er keine Verbindungen an.

Versuch doch mal folgende Initialisierung des TIdTCPServers
(angenommen er heißt "TCPServer"):

procedure TMainForm.InitServer;
var
ABinding: TIdSocketHandle;
begin
TCPServer.Active := False; { Server inaktiv setzen sonst können keine Bindungen angelegt werden! }
{ Bindung(en) anlegen (auf diese IP / Port "hört" der Server) }
ABinding := TCPServer.Bindings.Add;
ABinding.IP := '127.0.0.1'; { Bindung auf Localhost }
ABinding.Port := 85; { Port = 85 }
TCPServer.Active := True; { Server aktiv setzen }
end;


Vielleicht klappts!

lg
Tommiii

richie 12. Mai 2006 18:28

Re: Indy 10: Socket Error # 10061
 
:dancer2: :love: Ich liiieeebe dich! ^^

Es hat funktioniert! Danke! :cheers:


Hast was gut bei mir! ^^

Tommiii 16. Mai 2006 23:37

Re: Indy 10: Socket Error # 10061
 
Freut mich wenn ich helfen konnte!!

lg
Tommiii
:-D

Real_Thunder 17. Mai 2006 01:17

Re: Indy 10: Socket Error # 10061
 
Nur mal eine vermutung.. ich bin ja auch noch am lernen, aber sollte der Port nicht zugewesen werden, befor die verbindung aktiviert wird ?

also quasi:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  IdTCPServer1.DefaultPort := 85;
  IdTCPServer1.Active := true;
end;

procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
begin
  AContext.Connection.Socket.WriteLn('Hello from Indy TCPServer!');
  AContext.Connection.Disconnect;
end;
Korrigiert mich wenn ich falsch liege


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