udp stream kann nicht erstellt werden.

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

da_poller

Betreff: udp stream kann nicht erstellt werden.

BeitragDo, Sep 25, 2008 20:10
Antworten mit Zitat
Benutzer-Profile anzeigen
kann es sein das man nicht 2 normale udp streams erstellen kann?

versuche schon seit ner stunde ca auf einem rechner 2 streams zu haben.. einen festgelegt auf port 8000 den anderen unbelegt..

die beiden streams laufen in verschiedenen programmen..

bitte sämtliche tipps und ideen dazu melden

Thorsten

BeitragDo, Sep 25, 2008 20:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielleicht ist dein PC ja kaputt?????

Okay, Spaß beseite.

Port nicht anzugeben ist immer schonmal scheiße. Wieso nicht einfach mal 8001 ausprobieren? Auf jeden Fall gehts normalerweise Razz

mfG,

Thorsten

Goodjee

BeitragDo, Sep 25, 2008 20:41
Antworten mit Zitat
Benutzer-Profile anzeigen
vllt ist 8000 reserviert, zum beispiel für http
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/
 

da_poller

BeitragDo, Sep 25, 2008 20:48
Antworten mit Zitat
Benutzer-Profile anzeigen
hatte den fehler gefunden.. der host erstellt einen stream auf 8000

nur beim client hintendran hatte ich die () vergessen (dummer leichtsinnsfehler) aber nichts desto trotz hab ich ein 100% packet loss problem..

aber dazu check ich jetzt erstmal auf leichtsinnsfehler..

Tankbuster

BeitragDo, Sep 25, 2008 22:06
Antworten mit Zitat
Benutzer-Profile anzeigen
100% Packet-Verlust kann nicht passieren, wenn du beide Proggis auf einem Rechner laufen lässt Wink
Da stimmt also was am Cde nicht. Hast du die IP ("127.0.0.1") auch in einen Integer umgewandelt?
Twitter
Download Jewel Snake!
Windows|Android
 

da_poller

BeitragDo, Sep 25, 2008 22:18
Antworten mit Zitat
Benutzer-Profile anzeigen
ja alles gemacht bin grad am zerlegen der teile und debuggen vllt findet sich so ein fehler..


hier mal mein gekürzter code der fehlerhaft ist.. seit nun 18 uhr hab ich probleme mit m netzwerk und hier finde ich keinen fehler..
Code: [AUSKLAPPEN]
Global name$
Global udp
Global s_ip
Global host
timer=CreateTimer(50)

name$=Input("Bitte deinen namen eingeben: ")
host=Input("Spiel Hosten(1) oder als Client(0) teilnehmen? ")

If host=1
   udp=CreateUDPStream(8000)
   If udp=0 Then RuntimeError "Stream konnte nicht erstellt werden!"
Else
   xx_ip$=Input("Bitte serverip eingeben: ")
   s_ip=INT_IP(xx_ip$)
EndIf


Repeat
   
   
   Select host
      Case 1
         udpempfang()
      Case 0
         login();client only
   End Select
   WaitTimer(timer)
   
Until KeyHit(1)

Function udpempfang() ;mausbewegung fehlt noch
   If RecvUDPMsg(udp)<>0 Then
      wert=ReadByte(udp)
      
      t_ip=UDPMsgIP(udp)
      t_port=UDPMsgPort(udp)
      
      Select wert
         Case 5
            
            udp_name$=ReadString(udp)
            
            WriteByte udp,100
            SendUDPMsg udp,t_ip,t_port
            
            Print udp_name$
      End Select
   EndIf
End Function


Function login()
   udp=CreateUDPStream()
   If udp=0 Then RuntimeError "Stream konnte nicht erstellt werden!"
   
   WriteByte udp,5
   WriteString udp,name$
   
   SendUDPMsg udp,s_ip,8000
   
   Repeat
      
      If RecvUDPMsg(udp) <>0 Then
         DebugLog "hhh"
         x=ReadByte(udp)
         Print x
      EndIf
   Until Not KeyHit(1)
   
   
End Function


Function INT_IP(ip$);aus dem codearchiv kopiert!
   p1=Instr(ip$,"."):p2=Instr(ip$,".",p1+1):p3=Instr(ip$,".",p2+1)
   Return (Int(Mid(ip$,1,p1))*16777216)+(Int(Mid(ip$,p1+1,p2-p1))*65536)+(Int(Mid(ip$,p2+1,p3-p2))*256)+Int(Mid(ip$,p3+1,-1))
End Function


im richtigen programm(in dem nix anders ist nur das mehr zeilen dabei stehen kommt nichtmal was am server an..

bitte helft mir Smile

Tankbuster

BeitragDo, Sep 25, 2008 22:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Also bei mir wird der Name des Clients die ganze Zeit auf dem Server geschrieben... scheint zu funtzen Wink
Twitter
Download Jewel Snake!
Windows|Android
 

da_poller

BeitragFr, Sep 26, 2008 7:02
Antworten mit Zitat
Benutzer-Profile anzeigen
und kommt beim client der antwortswert an?

bei mir kam ich (nur mit dem testcode) so weit wie du


im gesamtcode kam nichtmal was beim server an(keine ahnung warum...)

Tankbuster

BeitragFr, Sep 26, 2008 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
mach es mal so:
Zitat:
t_ip=RecvUDPMsg(udp)
If t_ip <>0 then
......
Endif


Denn RecvUDPMsg() liefert die ip sowieso zurück..
und ich weiß auch woran es liegt.
"UDPMsgPort(udp)" liefert nämlich den Port des Servers zurück, und nicht den Port des Clients Wink
Schick den Port am besten (außer er ist immer konstant) bei der Anmelde-Nachricht mit Wink
Twitter
Download Jewel Snake!
Windows|Android
 

da_poller

BeitragFr, Sep 26, 2008 16:36
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm daran könnte es liegen.. werde es mal versuchen.. dachte immer das die ip die ich auslese vom client kommt Razz bin mal eben ändern


edit: hab es nun geändert aber es kommt im programm nichtmal eine nachricht an..

nur mal so zu kontrolle.. ich erstelle den client stream (8001) und den host (8000)

als client sende ich an 8000 und als host an 8001.. soweit richtig?

nunja viel zeit bleibt nimmer ioch hoffe den bug noch irgendwo zu finden..

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group