UDP Liest keine Nachricht aus

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Compix

Betreff: UDP Liest keine Nachricht aus

BeitragSa, Jan 22, 2011 23:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich wollte (nochmal) kurz etwas fragen:

Das Script kann noch nicht viel, und sollte zumindest erstmal die Nachricht "STATUS" empfangen und darauf die Nachricht "ONLINE" senden an den Clienen damit dieser wieder reagiert.

Link: http://ul.to/ecw4mh

Ich hoffe mir kann jemand helfen Smile

Pummelie

BeitragSa, Jan 22, 2011 23:16
Antworten mit Zitat
Benutzer-Profile anzeigen
https://www.blitzforum.de/upload/newcode.php Rolling Eyes

Sonst wird keiner deinen Code sehen wollen.
It's done when it's done.
 

Compix

BeitragSa, Jan 22, 2011 23:20
Antworten mit Zitat
Benutzer-Profile anzeigen
https://www.blitzforum.de/uplo...?show=2319 <- Login
https://www.blitzforum.de/uplo...?show=2320 <- PREserver [also der Server]

Das wusste ich nicht Smile

Aber ich werde es mir merken ^^

ToeB

BeitragSo, Jan 23, 2011 1:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstmal : ReadAvail kannst du dir Sparen, das macht im Prinzip schon RecvUDPMsg.

Dann darf der Port nicht als String sondern als Integer gespeichert werden, also anstatt "8643" nur 8643.

"localhost" geht nicht, du musst die IP "127.0.0.1" nehmen, die aber vorher zum Integer umwandeln (dazu kannst du die UDP_IntIP Funktion aus meiner SimpleUDP2 nehmen)

Ich rate dir aber auch, keine zwei Streams zu nehmen, vor allem wenn du vor hast es später übern Internet laufen zu lassen, da werden zwei Ports hinderlich sein.


mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

Compix

BeitragSo, Jan 23, 2011 11:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Kann ich also anstatt einem GET und SEND - Port auch einfach einen nehmen der Beides macht, oder wie war das von dir gemeint?

ToeB

BeitragSo, Jan 23, 2011 12:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja ersten das (Also einen Stream mit einem Port) und zweitens nicht als Zeichen kette, sondern als Integer :
Code: [AUSKLAPPEN]
Port_Get$ = "3467" ;<- So nicht !
Port_Get% = 3467 ;<- So !


Außerdem empfehle ich dir Statt einen String am Anfang nur einen Byte zu schicken. je nach dem welchen wert (0-255) der Byte annimmt, kannst du dann dem entsprechend handeln. Es ist deshalb besser weil zum einen die Nachrichten-Größe extrem geschrumpft wird und hinterher mehr Platz für andere Sachen bietet, und zum anderen Rate ich davon ab Strings zu schicken (Okay Write/ReadLine geht noch), weil es manchmal zu sehr bösen MAVs kommen kann wenn nur ein Byte falsch gespeichert wurde.

Und als Tipp : Guck dir doch mal meine SimpleUDP2 an, da kannst du die ganzen Sachen in ein paar Zeilen fassen und hast zusätzlich noch das Feature, das du Nachrichten schicken kannst, die wie bei TCP auf jeden Fall ankommen, das Programm aber trotzdem nicht solange anhält.

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

Compix

BeitragSo, Jan 23, 2011 13:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Nun habe ich den Quelltext so geändert (ich hoffe auch vollständig) wie du es gemeint hattest.
Jedoch bekomme ich die Verbindung immernochnicht zu stande.

Und nochmal wegen ReadByte anstatt ReadLine:
Wie kann ich dies denn machen wenn ich z.B Nutzernamen oder Passwörter übertragen möchte?
So wie ich es bisher vorhatte, sollte er an den Server erstmal den Namen schicken, auf die Antwort warten (das geht wieder mit ReadByte) und dann das Passwort schicken (...) .
Doch auch da bin ich mir nicht sicher ob der Server da nicht vor verwirrung zusammenbricht Very Happy

Hoffe du kannst mir malwieder helfen Wink

Die aktuellen Quelltexte:
https://www.blitzforum.de/uplo...?show=2322 <- Server
https://www.blitzforum.de/uplo...?show=2321 <- Login-Fensterchen

Hubsi

BeitragSo, Jan 23, 2011 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn Du Strings zu übertragen hast (Nutzername oder Passwort z.B.) macht Write/ReadLine schon Sinn. ToeB meinte wohl eher die laufenden Daten im Spiel. Du musst Dir aber den ganzen Krempel erst gar nicht antun wenn Du die SimpleUDP2 nutzt. Die Hilfe ist zwar leider noch nicht vollständig, aber schon mit den Beispielcodes ist es recht einfach das ganze zu implementieren. Server oder Client erstellen, Commands adden, Daten rumschicken und empfangen. Ich glaube ich habe nichts vergessen. Viel ist es ja auch nicht Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Compix

BeitragSo, Jan 23, 2011 17:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Natürlich macht es Sinn SimpleUDP2 zu verwenden, keine Frage Wink
Jedoch möchte ich mich eben durch so ein Beispiel an das Ganze herantasten, bevor ich sofort auf soetwas umsteige Smile
 

Compix

BeitragSo, Jan 23, 2011 19:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, der Fehler ist behoben Smile
Habe vergessen aus einem WriteLine ein WriteByte zu machen Very Happy

Hat sich also erledigt Wink

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group