UDP funktioniert (maybe) nicht richtig!

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Tankbuster

Betreff: UDP funktioniert (maybe) nicht richtig!

BeitragFr, Jan 26, 2007 22:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Diese 2 Programme lasse ich gleichzeitig laufen:
Aber sie schicken sich einfach überhaupt nichts! Twisted Evil (die bytes gehen einfach in den unendlichen weiten des computers verloren)^^
Ich verstehe nicht, warum es nicht funktioniert Sad


Zitat:
stream = CreateUDPStream(800)
Print stream
WaitKey()

byte$=ReadByte(stream)
While Not KeyHit(1)

ip = RecvUDPMsg(stream)
Print ip
byte$=ReadByte(stream)
Print byte$

Delay 5000
Flip
Wend


Zitat:
stream = CreateUDPStream(8000)
Print stream
WaitKey()

While Not KeyHit(1)
WriteByte(stream,2)

SendUDPMsg stream,"127.0.0.1",800

Delay 5000
Flip
Wend
Twitter
Download Jewel Snake!
Windows|Android

TheMatrix

BeitragFr, Jan 26, 2007 23:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Da kann ich dir leider nicht recht geben Wink . Die Daten werden schon gesendet, aber nich an diese "IP" die du angibst.

Du musst deine IP nämlich zuvor in eine Zahl umwandeln. Dazu stellt blitzbase.de eine nette kleine Funktion zu Verfügung (Siehe im Client-Code) nämlich INT_IP, die genau das tut.

Siehe das Beispiel:
Server Code: [AUSKLAPPEN]

stream = CreateUDPStream(8080)

While Not KeyHit(1)

ip = RecvUDPMsg(stream)
   

If ip

   ; Lese den Stream aus
   While ReadAvail(stream)

      byte$=ReadString$(stream)
      Print byte$

   Wend
End If

Delay 50
Flip
Wend


Client Code: [AUSKLAPPEN]

stream = CreateUDPStream()

While Not KeyHit(1)

   WriteString stream,"Hallo Server!"
      
      Print "sending"
      
   SendUDPMsg stream,int_ip("127.0.0.1"),8080

Delay 50
Flip
Wend

; WICHTIG - Wandelt die IP in eine Zahl um
Function INT_IP(IP$)
a1=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
a2=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
a3=Int(Left(IP$,Instr(IP$,".")-1)):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
a4=Int(IP$)
Return (a1 Shl 24) + (a2 Shl 16) + (a3 Shl 8 ) +a4
End Function


Jetzt fliegen deine Daten nicht mehr Verwirrt durch deinen ganzen PC, sondern dahin wo du sie haben willst Very Happy .

Aber ich muss gestehen, ich hab ersteinmal 5min ausprobieren müssen, bis ich den Fehler entdeckt hab Rolling Eyes .

Gruß Manu
°_° °.° °~° °v° .. -.-

Tankbuster

BeitragSa, Jan 27, 2007 0:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey, danke^^
Zitat:
Aber ich muss gestehen, ich hab ersteinmal 5min ausprobieren müssen, bis ich den Fehler entdeckt hab

Ist das bei dir viel Zeit oder nicht? Rolling Eyes
Twitter
Download Jewel Snake!
Windows|Android

TheMatrix

BeitragSa, Jan 27, 2007 3:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Viel Zeit Very Happy .

Naja, ich programmiere auch grad an soner Geschichte dran, aber halt kommerziell. Und da das n ziemlich einfacher Fehler war, find ich es von mir aus nicht so pralle, dass ich für sowas so lang gebraucht hab Confused .

Nunja, Selbstkritik muss halt sein Very Happy .
°_° °.° °~° °v° .. -.-

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group