AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Mit Indy-UDP Daten vom Server zum Client schicken
Thema durchsuchen
Ansicht
Themen-Optionen

Mit Indy-UDP Daten vom Server zum Client schicken

Ein Thema von Reddog · begonnen am 6. Mär 2005 · letzter Beitrag vom 6. Mär 2005
Antwort Antwort
Benutzerbild von Reddog
Reddog

Registriert seit: 18. Jul 2004
Ort: Würzburg
56 Beiträge
 
#1

Mit Indy-UDP Daten vom Server zum Client schicken

  Alt 6. Mär 2005, 12:06
Hallo,

ich versuche ein kleines Pong-Spiel mi Multiplayer-Funktion zu proggen. Es hat zwar mit TCP geklappt, ich hab mich aber dann entschlossen auf UDP umzusteigen, da es offensichtlich besser geeignet ist. Dafür hab ich jetzt die Indy Komponenten verwendet, kenn' mich aber damit nicht aus. Meine Frage ist, wie kann ich Daten vom Server zum Client schicken? Der Client verschickt ja seine Daten ohne Probleme, die dann der Server in seinem OnUDPRead-Event empfängt. Aber, der Client hat ja nur sein OnStatus-Event.

PS: Ich hab schon die Suchfunktion der DP, sowie von Google bemüht, habe aber keine Antwort gefunden.

Also, ich danke für jede Hilfe.
Ciao, Reddog.
All prime numbers are odd with the exception of two, which is an odd prime
  Mit Zitat antworten Zitat
RJelinek

Registriert seit: 6. Mär 2005
4 Beiträge
 
#2

Re: Mit Indy-UDP Daten vom Server zum Client schicken

  Alt 6. Mär 2005, 12:55
Der einfachste Weg:

Verwende auf beiden Seiten die IdUdpServer-Komponente, denn mit dieser kannst du sowohl Senden, als auch Empfangen.
  Mit Zitat antworten Zitat
Benutzerbild von Reddog
Reddog

Registriert seit: 18. Jul 2004
Ort: Würzburg
56 Beiträge
 
#3

Re: Mit Indy-UDP Daten vom Server zum Client schicken

  Alt 6. Mär 2005, 15:17
Daran hab ich auch gedacht. Ich frag mich aber, ob das wirklich so gedacht war? Wozu gibt's denn dann überhaupt einen Client?

Ein Problem ist, dass ich dann auf einem PC nicht zwei mal mein Prog laufen lassen kann. Das war zu Testzwecken schon ganz nett. Ich versuch's trotzdem mal so.

Danke für die Antwort.
All prime numbers are odd with the exception of two, which is an odd prime
  Mit Zitat antworten Zitat
RJelinek

Registriert seit: 6. Mär 2005
4 Beiträge
 
#4

Re: Mit Indy-UDP Daten vom Server zum Client schicken

  Alt 6. Mär 2005, 15:55
Soweit ich sehe, kann der IdUDPClient auch empfangen, allerdings gibt es kein Event dazu, sondern du musst die Receive-Routinen verwenden.
  Mit Zitat antworten Zitat
Benutzerbild von Reddog
Reddog

Registriert seit: 18. Jul 2004
Ort: Würzburg
56 Beiträge
 
#5

Re: Mit Indy-UDP Daten vom Server zum Client schicken

  Alt 6. Mär 2005, 16:15
Genau das klappt bei mir nicht. Ich hab versucht mit einem Timer oder einer Schleife die Receive-Routine aufzurufen. Aber der client scheint bei mir so nix zu empfangen.

Also ich habe mich in den Abgrund des Indy-Quellcodes begeben und erfahren, dass das OnUDPRead-Event durch einen Listener-Thread realisiert wird. Dasselbe könnte ich wohl auch für einen Clienten übernehmen. Hmm, muss das mal ausprobieren. Fragt sich nur, warum es nicht schon implementiert war... Muss doch irgendeinen Grund haben.

Ich glaube, ich markier' die Frage, als beantwortet. Da scheint's ja doch keine direkte Lösung zu geben.

Danke RJelinek für die Denkanstöße
All prime numbers are odd with the exception of two, which is an odd prime
  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 02:02 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