Mal wieder ein Prob mit UDP
Übersicht

![]() |
HummelpupsBetreff: Mal wieder ein Prob mit UDP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das kann doch nich sein. Tausend und ein mal probiere
ich das aus. Nehme andere UDP Beispiele, alle verfahren sie anders. Nix klappt vernümpftig. Kann mir einer sagen ob der Code richtig ist und mein Net das nur nich will wegen FW oder was auch immer oder ob der Code Kot ist. Hilfe wäre echt cool. Code: [AUSKLAPPEN] Graphics 800,600,16,2
SetBuffer BackBuffer() Print "[1] Host" Print "[2] Client" key=WaitKey() If Chr(key)="1" Then Host=1 Port_Senden=8000 Port_Empfangen=8001 Stream_Senden=CreateUDPStream(Port_Senden) Stream_Empfangen=CreateUDPStream(Port_Empfangen) End If If Chr(key)="2" Then Host=0 Port_Senden=8001 Port_Empfangen=8000 Server_IntIP=int_IP(Input("Host IP: ")) Stream_Senden=CreateUDPStream(Port_Senden) Stream_Empfangen=CreateUDPStream(Port_Empfangen) WriteByte Stream_Senden,1 SendUDPMsg Stream_Senden,Server_IntIP,Port_Senden End If Repeat Color 255,0,0 Oval x1,y1,10,10 Color 0,0,255 Oval x2,y2,10,10 WriteByte Stream_Senden,2 WriteByte Stream_Senden,x1 WriteByte Stream_Senden,y1 If Host=0 Then SendUDPMsg Stream_Senden,Server_IntIP,Port_Senden If Host=1 Then SendUDPMsg Stream_Senden,Client_IntIP,Port_Senden Repeat eingang=RecvUDPMsg(Stream_Empfangen) Byte1=ReadByte(Stream_Empfangen) Select byte1 Case 1 Client_IntIP=eingang Case 2 x2=ReadByte(Stream_Empfangen):y2=ReadByte(Stream_Empfangen) End Select Until eingabe=0 x1=MouseX() y1=MouseY() Flip Cls Until KeyHit(1) Function Int_IP(inputIP$) Local break1,break2,break3,add1,add2,add3,add4,ipreturn break1 = Instr(inputIP$,".") break2 = Instr(inputIP$,".",break1+1) break3 = Instr(inputIP$,".",break2+1) add1 = Mid(inputIP$,1,break1-1) add2 = Mid(inputIP$,break1+1,break2-1) add3 = Mid(inputIP$,break2+1,break3-1) add4 = Mid(inputIP$,break3+1) ipreturn=(add1 Shl 24) + (add2 Shl 16) + (add3 Shl 8) + add4 Return ipreturn End Function |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab UDP in CubeRacer drin , kannste da ja mal abgucken .
In deinem Beispiel ballerst du ständig mit Pakete was nicht gut ist , das mußt du synchronisieren . z.B. erst wenn dein Client Daten schickt , schickst du ihm wieder neue . Diese Funk. braucht man auch nicht Int_IP . |
||
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
Markus2 hat Folgendes geschrieben: braucht man auch nicht Int_IP .
![]() |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Code: [AUSKLAPPEN] Function NetRun() Local n=0,IP1=0,IP2=0 NetServerIP=0 NetLocalIP=0 If Len(NetServerName$)=0 Then Return n = CountHostIPs(NetServerName$) ;hier den Server Namen eingeben If n=>1 Then IP1 = HostIP(1) n = CountHostIPs("") ;wenn leer dann bekommt man den lokalen Rechner If n=>1 Then NetLocalIP = HostIP(1) If IP1=NetLocalIP Then NetServer=1 Else NetServer=0 If NetServer=1 Then n = CountHostIPs("") ;wenn leer dann bekommt man den lokalen Rechner If n=>1 Then NetServerIP = HostIP(1) DebugLog "Network UDP Server" DebugLog "Server IP " + DottedIP(NetServerIP) NetStreamIn=CreateUDPStream(NetServerPort) ;auf dem hört der immer NetStreamOut=CreateUDPStream(NetServerPort+1) ;spricht DebugLog "NetStreamIn "+NetStreamIn DebugLog "NetStreamOut "+NetStreamOut Else n = CountHostIPs(NetServerName$) ;hier den Server Namen eingeben If n=>1 Then NetServerIP = HostIP(1) DebugLog "Network UDP Client" DebugLog "Server IP " + DottedIP(NetServerIP) NetStreamIn=CreateUDPStream(NetServerPort+1) ;hört NetStreamOut=CreateUDPStream(NetServerPort) ;sendet dahin wo der Server hört NetListCheck(NetServerIP,NetServerPort) ;an dem senden wir dann EndIf End Function |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group