![]() |
UDP mit Indy
Mahlzeit,
ich versuche, durch eine UDP Verbindung mit dem UDPClient Serverinformationen eines Gameservers abzurufen. Durch sendString sende ich ja immerhin schon die Anfrage - aber wie komme ich nun an die Antwort des Servers? Leider konnte mir die SuFu da nicht weiterhelfen. Gruß, Frank. |
Re: UDP mit Indy
UDP ist ein verbindungsloses Protokoll. Deshalb bräuchtest du eine UDPServer Komponente um die Netzwerkpakete zu empfangen.
Wenn du vom Server etwas wissen möchtest und diese dir eine Antwort schickt ist TCP das richtige Protokoll. Entscheidunghilfe TCP oder UDP: * Chat ähnliche Kommunikation => TCP * Programm möchte seine Kollegen im Netzwerk entdecken => UPD Broadcast * Programm sendet ständig Daten (z.B. die genaue Uhrzeit) => UDP, da immer nur das letzte Packet relevant ist * Übertragung grösserer Datenmengen (~ > 1 KB) => TCP |
Re: UDP mit Indy
Welcher Server?
Welches Protokoll (Layer7)? |
Re: UDP mit Indy
Mal ein paar Grundlagen:
![]() ==> Du musst wissen auch welchen port und über welches Protokoll(TCP doer UDP) der Server antwortet. Und genau da musst du auch horchen um was zu hören... mfg Christian |
Re: UDP mit Indy
Danke schonmal für die Antworten.
Der Port ist mir bekannt, allerdings kann ich nur über UDP eine Verbindung öffnen. Oder verstehe ich es grundlegend falsch, dass der Server mit einem anderen Protokoll als dem Queryprotokoll antworten kann? //Edit: Ich habe gerade ein PHP Script gefunden, welches zuerst eine Verbindung mit fsockopen öffnet (Über UDP) und anschließend die Antwort des Servers mit fwrite (gleicher Stream) liest. Noch mehr, was mich gerade verwirrt. Ich dachte, UDP wäre ein "einweg-Protokoll", wenn man es ausdrücken kann? |
Re: UDP mit Indy
Zitat:
Zitat:
Zitat:
Zitat:
mfg Christian |
Re: UDP mit Indy
Ich meinte natürlich fgets, war wohl zu unüberlegt geschrieben, sorry.
Dann scheint wohl die Formatierung des Querys falsch zu sein, die Antwort erhalte ich nämlich nicht. Ich werde noch ein wenig rumprobieren, danke jedenfalls für die schnelle Hilfe und Aufklärung ;) |
Re: UDP mit Indy
Empfehlenswert ist das Blue's Port Tool V5:
![]() Damit kann man UDP Daten verschicken und empfangen. Das ist sehr, sehr hilfreich, um festzustellen, ob die Sache prinzipiell funktioniert und ob die Portnummern stimmen, u.s.w. |
Re: UDP mit Indy
Ich muss da nochmal nachbohren.
Welchen Gameserver willst du abfragen? Für HL-Server (+Source) kann ich dir Code geben. Für mein Projekt hlsc (halflife server check) brauche ich solche abfragen. ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 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