![]() |
Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesucht
Hallo!
Wie die Überschrift schon verrät, suche ich ein wirklich gutes Tutorial zur TCP/IP-Komponente von Indy (Server + Client), speziell, wie man damit Daten überträgt. Kennt jemand da was gutes?? Gruß Mathis |
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
Ein gutes Tutorial kenne ich eigentlich nicht.
Aber es sollte einen Ordner Demos bei den Indys dabei gewesen sein. Da kannst du dir angucken was die alles machen. Und sonderlich schwer finde ich es nicht., da die meisten Prozeduren selbsterklärend sind. |
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
Wo drückt denn der Schuh? Denn eigentlich ist es popeleinfach.
Nachtrag: Popeleinfach ist es natürlich nur dann, wenn man es 1x gemacht hat. Zeig mal, was du bisher versucht hast. |
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
OK, ein bisschen was hab ich jetzt schon hinbekommen. Ich verwende momentan den mitgelieferten BasicClient und versuche einen Server zu schreiben, zu dem sich der Client verbinden kann. Der Server soll dann erstmal nicht mehr machen, als die IP des Clients auszugeben.
Das verbinden funktioniert schon, auch die Procedure ClientConnect wird nach dem Verbinden aufgerufen. Nur gibt der mir leider keine IP aus, sondern nur nen leeres ShowMessage-Fenster. Hier mein Code:
Delphi-Quellcode:
Wie bekomme ich jetzt die IP des Clients heraus?
procedure TForm1.ClientConnect(AThread:TIdContext);
begin ShowMessage (AThread.Connection.Socket.Host); end; procedure TForm1.btnStartStoppClick(Sender: TObject); var Binding: TIdSocketHandle; begin if (IdTCPServer1.Active) then begin IdTCPServer1.Active := false; btnStartStopp.Caption := 'Server starten'; end else begin Binding := IdTCPServer1.Bindings.Add; Binding.IP := '192.168.0.2'; Binding.Port := 8080; IdTCPServer1.OnConnect := ClientConnect; IdTCPServer1.Active := true; btnStartStopp.Caption := 'Server stoppen'; end; end; PS: Ich teste das ganze momentan lokal, dh. der Server läuft aufm selben Rechner mit der selben IP wie der Client, aber das dürfte ja eigentlich nicht das Problem sein, oder?? |
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
Ich habe gleich mal ein Tutorial geschrieben.
![]() Das kannst du dir ja mal ansehen. //edit: Im Server geht das so:
Delphi-Quellcode:
AContext.Binding.PeerIP
|
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
Cool, vielen, vielen Dank für dieses übersichtliche Tutorial. Habe bisher nämlich immer nur seitenlange und extrem umfangreiche Tutorials gefunden und da sieht man als Anfänger in Sachen TCP/IP echt nicht durch. Aber das sieht ja echt einfach aus. Werds gleich mal ausprobieren.
Eine Frage hätte ich noch: Jetzt weiß ich zwar, wie ich dem Server nen String schicke. Interessant wäre jetzt noch, wie ich den Server zum Antworten bekomme (ich schätze mal mit WriteLn im IOHandler oder so??) und vor allem, welches Ereignis ich im Client setzen muss, damit dieser diese Antwort entgegennimmt?? |
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
Zitat:
Server schreibt:
Delphi-Quellcode:
AContext.Connection.IOHandler.Writeln('TEXT');
|
Re: Gutes Tutorial zur Datenübertragung mit Indy TCP/IP gesu
OK, dann werde ich warscheinlich am Besten auf jede Seite nen Server und nen Client reinpacken, um Verzögerungen zu vermeiden...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:38 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 by Thomas Breitkreuz