AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Indy [TCP Server / Client]
Thema durchsuchen
Ansicht
Themen-Optionen

Indy [TCP Server / Client]

Ein Thema von NeoLuxembourg · begonnen am 16. Jul 2004 · letzter Beitrag vom 17. Jul 2004
Antwort Antwort
NeoLuxembourg

Registriert seit: 16. Jul 2004
12 Beiträge
 
#1

Indy [TCP Server / Client]

  Alt 16. Jul 2004, 22:02
[Als erster sorry fur mein schlechtes deutsch ... ]

Also, ich will mit Delphi en Server / Client programm aufbauen.

- Der client soll sich einloggen (damit kein problem!)
- Der Server soll die Daten aufnehmen und wenn alles klappt hat der user zugriff auf dem server (alles ok bis jetzt)
- Es soll möglisch sein das sich mehere client im server einlogen (.. ok!)

- Der server soll di daten der users (IP, Username, ...) in einem array speichern (!) /!\

Aber...

Nachdem ich die IP der Users hab;

AThread.Connection.Socket.Binding.PeerIP;

Wie kann ich danach wieder auf di connection zugreiffen. d.h .. wenn zb client 1 mit der IP 192.168.0.1 ein text an client 2 192.168.0.2 senden will, wie soll ich das machen?

Ein suche hier (Forum) hat mir au nicht weiter geholfen!

Soll ich auf den server auch ein TCPClient laufen lassen der wenn gebrauch den text vom server ausf den client send (der client muss dann auch ein TCPServer besitzen!)

Mein vorstellung wäre di:

Client schickt CMD zum server über TCPClient ->
Server kriegt di CMD (TCPServer) und gibt si am Programm weiter->
MainProgramm verarbeitet di CMD und sickt das endergebnis am Client über TCPClient->
Der Client erhält das Ergebnis von seinem TCPServer ... usw

Oder geht das auch anders ?
Wenn ich so vergehe entsteht kein problem mit dem TCPClient im server wenn zu viele Client aus einmal ein CMD senden ?

Thx...
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: Indy [TCP Server / Client]

  Alt 16. Jul 2004, 22:13
Der Server erhält mal das Kommando, zusammengesetzt aus Zieladresse und Daten. Diese werden an den Server versendet und dort im OnClientRead-Ereignis ausgelesen. Dort liest der Server die Daten aus, findet das richtige Socket an das gesendet werden soll, und schickst das Socket an diese Daten.
Ich hoffe das war halbwegs verständlich erklärt, andernfalls helfe ich gerne weiter.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#3

Re: Indy [TCP Server / Client]

  Alt 16. Jul 2004, 22:41
erstmal herzlich willkommen bei DP

hab sowas schonmal realisiert falls du sources haben willst ( is aber nicht gerade einfach zu verstehen weils ziemlich groß und noch nicht fertig ist )

desweiteren hab ich mal jemanden anderst das erklärt wie man die daten für die clients hält ( siehe indy TCP client/server Demo projekt -> da ist es sehr gut realisiert )

und fürs lesen via client kann man threads benutzen oder schleifen wenn es nicht so um die performance / benutzerfreundlichkeit geht.. aber näheres siehe link

http://www.delphipraxis.net/internal...985&highlight=
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
NeoLuxembourg

Registriert seit: 16. Jul 2004
12 Beiträge
 
#4

Re: Indy [TCP Server / Client]

  Alt 17. Jul 2004, 00:19
@alcaeus

Ok, verstanden aber wie soll das ..., findet das richtige Socket an das gesendet werden soll, und schickst das Socket an diese Daten. ... mit dem Indy gemach werden?

@supermuckl

Ja das wäre ne gute Lösung. Ich versucht so bald ich daheim bin ... thx!

PS: Ich versuch mal was über threads zu finden und paste mein source hierher (also, wenn alles funzt)
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Indy [TCP Server / Client]

  Alt 17. Jul 2004, 00:40
indy server hat den kompletten threading kram komplett integriert
kannst damit direkt alle clients "verwalten" musst nurnoch nen record an jeden client-thread "hängen"

dann kannst nacher über ne liste auf alle clients zugreifen oder bei einem ereignis @ server auf die zugehörige liste zugreifen und client daten verarbeiten ( user / pass vergleichen usw )

das demo ist wie gesagt in den indy kompos mit der strategie hab ichs bei meinem SCS chat system auch gemacht
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
NeoLuxembourg

Registriert seit: 16. Jul 2004
12 Beiträge
 
#6

Re: Indy [TCP Server / Client]

  Alt 17. Jul 2004, 16:34
wo bekomme ich di demo denn her ?
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Indy [TCP Server / Client]

  Alt 17. Jul 2004, 16:57
auf der nevrona.com seite wo es indy gibt.. da gibt es auch die demos
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
NeoLuxembourg

Registriert seit: 16. Jul 2004
12 Beiträge
 
#8

Re: Indy [TCP Server / Client]

  Alt 17. Jul 2004, 17:46
hmmm .. aber was für ne demo soll ich den dort mir ansehen ?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:52 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