![]() |
Re: SocketFehler #10053 und 10057
Hi,
Ich hab auch ein Socket Fehler #10057 und weiß nicht, woher die kommen. ich hab schon alles mögliche ausprobiert, aber scheint nicht zu gehen. Hinzu kommt noch, dass ich vor einiger Zeit wunderbar damit arbeiten konnte. Hier mal ein bisschen Source...
Delphi-Quellcode:
Sogar mit sich selbst verbindet er nicht (localhost)...
procedure TForm1.Button1Click(Sender: TObject);
begin ClientSocket1.Address := Edit1.Text; //IP-Adresse clientsocket1.Active := true; clientsocket1.Open; //beides oder nur eins von (active und open)? end; procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); begin Label1.Caption := ServerSocket1.Socket.ReceiveText; end; procedure TForm1.Button2Click(Sender: TObject); begin ClientSocket1.Socket.SendText(Edit2.Text); end; procedure TForm1.ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin ShowMessage(ServerSocket1.Socket.RemoteAddress); end; procedure TForm1.ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); begin ShowMessage('Try to connect'); end; procedure TForm1.ClientSocket1Error(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer); begin ShowMessage('No Connect'); end; procedure TForm1.FormCreate(Sender: TObject); begin serversocket1.port := 10025; serversocket1.Active := true; Serversocket1.Open; end; THX schonmal im voraus.. |
Re: SocketFehler #10053 und 10057
Grundlegend ist beiden Poster mit dem Problem nicht bewusst, dass ein Serversocket mehrere Clients verbunden hat. Somit stellt sich doch die Frage an wen der ServerSocket die Daten schicken soll, welche an
Delphi-Quellcode:
übergeben werden. Hier muss der Socket des Clients übergeben werden, an welchen gesendet werden soll.
ServerSocket1.Socket.SendText('blubb');
Und grundsätzlich wird in dem letzten Code wieder direkt auf die Komponenten zugegriffen, obwohl in dem Thread zuvor schon 2malig darauf hingewiesen wurde, dass man die Socket Instanz nutzen sollte, die den Events mit "Socket" übergeben wird. |
Re: SocketFehler #10053 und 10057
hmm ich hab das eigentlich immer so gemacht und es hat hingehauen :roll:
gut ich mach das mal anders.. und außerdem sendet der Clien immer den text an den server .... |
Re: SocketFehler #10053 und 10057
Blöd.
Delphi-Quellcode:
in der Prozedur wird schon von Anfang an auf ServerSocket1 (hier einfach Server) zugegriffen. Daher konnte ServerSocket1.Socket.blah nix mehr damit anfangen. Also ServerSocket1 weggelöscht und dann ging's... Rätselhaft, aber funzt.
procedure TForm1.ServerClientRead(Sender: TObject;
Socket: TCustomWinSocket); begin showmessage(Socket.ReceiveText); end; Es ist schon komisch, einen Beitrag von jemandem zu lesen, der das gleiche Problem hat und dann festzustellen, dass es sein eigener Beitrag ist, vor einem Jahr... :D |
Re: SocketFehler #10053 und 10057
... auch schön zu lesen, dass meine Beiträge im Endeffekt richtig waren und zum Erfolg führen...
|
Re: SocketFehler #10053 und 10057
Hallo!
Interessanter Thread, gleiche Probleme sind bei mir auch aufgetaucht! Was aber jetz noch unbeantwortet gebliben ist - wie stelle ich die Client-Adresse ein, wenn der Server zum Client was schicken soll? Ich will mit
Delphi-Quellcode:
an einen Client der im Netzwerk auf adresse 192.168.2.5 läuft, was schicken, doch es kommt ein fehler.
Serversocket1.Socket.SendText('Ich bin ein gesendeter Text vom Server');
Die Kommunikation Client-->Server geht köstlich. Gruss |
Re: SocketFehler #10053 und 10057
Delphi-Quellcode:
for i:=0 to ServerSocket1.ActiveConnections-1 do
ServerSocket1.Connections[i].SendText('hallo'); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:25 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