Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi tserversocket problem (https://www.delphipraxis.net/24628-tserversocket-problem.html)

G G 23. Jun 2004 18:16


tserversocket problem
 
hi, also folgendes: ich hab ein programm geschrieben dass dem server eine ip und eine nachricht sendet. die ip stelt einen anderen client da, der schon mit dem server verbunden ist. Wie kann ich nun mithilfe der ip gezieht an den user die nachricht übermitteln? und des mit tserversocket

danke

GG

Kernel32.DLL 23. Jun 2004 18:51

Re: tserversocket problem
 
Moment...

Hab ich das jetzt richtig verstanden:

Der Client verbindet sich mit dem Server und schickt diesem eine Nachricht und seine IP (die des Clients). Und dann soll an den die Nachricht zurück geschickt werden?

oder:

Ein Client ist mit dem Server verbunden und ein anderer Client bekommt die IP des Clients der zuerst mit dem Server... Moment, was hab ich jetzt geschrieben? :wiejetzt:


Könnste dich noch ma präziser ausdrücken? oder vielleicht die Source des Proggs posten. Denn: "Use the Source, Luke" :lol:

G G 23. Jun 2004 19:17

Re: tserversocket problem
 
okay also nehmen wir mal zahlen her dann wirds deutlicher.

client 1 kennt die ip von client 2. client 1 und client 2 sind beide mit dem server verbunden.
nun will aber client 1 via dem server eine nachricht an client 2 schicken. und client 1 kennt die ip von client 2. es sind aber noch 100 andere clients mit dem server verbunden, nun will ich aber die nachricht die von client 1 kommt nur an client 2 schicken, und das wohl am einfachsten indem ich man dem server sagt schicke eine nachricht an die verbindung mit der ip.

war des etwas deutlicher was ich mein?

vielen dank

GG

G G 23. Jun 2004 19:18

Re: tserversocket problem
 
was kann ich dann da für einen befehl verwenden?

supermuckl 23. Jun 2004 19:26

Re: tserversocket problem
 
du solltest dir vielleicht eine client verwaltung in deinem server überlegen

ich mach wenn ich mit indy tcp server arbeite z.b. immer eine klasse die für einen einzigen client instanziert wird
wenn er connected..
wenn er disconnected wird das ganze wieder geFREEd.
wenn der client nun was an den server sendet weis ich nicht nur über die IP ( die kriegt man ja leicht raus )
sondern auch über den client thread ( TidPeerThread ) und seinem .Data anhängsel die gesamte klasse ( oder halt record ) wieder raus und hat somit wieder die ganzen daten die für den einen client der gerade was "gesagt" hat für weitere verwendung parat.

wenn nun ein client zum anderen was schicken soll und an die anderen nicht mach ich es so das z.b. bei jedem client es die möglichkeit gibt ( beim chat z.b. ) ein query zu öffnen mit einem anderen gesprächspartner.. und so weis dann der server
aha.. client 1 und client 5 wollen nun ein query.. also speichert der server in client 1 und client 5 ( nach nachfrage bei client 5 ob er das query annehmen will ) im record ab, das diese 2 mit einem query verbunden sind.. und so kann dann bei jedem "OnExecute" beim server geschaut werden.. ah der client der gerade eine zeile gesendet hat steckt im query mit einem anderen.. also ab mit dem string zu client 5..

is natürlich ein wenig komplexer als mit deinem Tserversocket.. aber wenn du einen gescheiten chat bauen willst dann ist eine verwaltung nicht mal so schlecht ( gerade für erweiterungen sehr wichtig )

G G 23. Jun 2004 19:35

Re: tserversocket problem
 
ah krass danke, ich muss dazu sagen bin ziemlich neu bei delphi. und hab nochnicht so den überblick mit dem begriff "klasse" und wie ich den umsetzt. hast du da vielleicht ne idea wo ich des ambesten alles nachlesen kann, weil ich glaub sowas werd ich auch für meine weiteren arbeiten brauchen.
hehe und die indy komponenten sind mir auch noch ein rätsel, hab bisjetzt nur it den tsocket dingern gearbeitet.

also nochmals vielen dank

GG

Ultimator 23. Jun 2004 19:37

Re: tserversocket problem
 
Ich kann dir das Buch "Delphi für Kids" nahelegen, da wird alles schön erklärt und du hast noch 'ne Pro-Version von Delphi 3 dabei :-)

supermuckl 23. Jun 2004 19:37

Re: tserversocket problem
 
die indys machen dir halt einiges leichter wenns an größere projekte geht über netzwerk.. aber auch die kleinen sind schnell zusammen gebaut damit weil echt alles abgedeckt ist mit indy

so tutorials gibts haufenweise ;) such mal mit google..

supermuckl 23. Jun 2004 19:39

Re: tserversocket problem
 
ach falls ichs vergess.. bei indy gibts auch viele demos dabei

guckst du @ www.nevrona.com
da gibts aktuellen indy krempel + demos + help

Aenogym 23. Jun 2004 20:58

Re: tserversocket problem
 
hi,

jetzt ist das ganze ja wieder gelöst mit einer EXTRA server-application, die irgendwo läuft, bei der sich dann jeder client verbindet. wie könnte man es aber lösen, dass jeder user sein eigener server ist, aber gleichzeitig auch der client ist, der auf den server des chat-partners zugreift?

dabei wäre man unabhängig von irgendwelchen servern, die dann eventuell mal down sind...

wäre das eine gute idee oder ist das quasi unmöglich (server und client auf dem gleichen port laufen lassen)?

Aenogym


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:36 Uhr.
Seite 1 von 2  1 2      

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