TCP udp... ich kappiers immernochnet
Übersicht

![]() |
beanage.johannesBetreff: TCP udp... ich kappiers immernochnet |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi, ich verstehe das absolut nicht .
könnte vieleicht jemand mal einen ganz simplen server und client posten danke |
||
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
jo ganz simpel mhh moment, des is nu udp
CLient: Code: [AUSKLAPPEN] Import vertex.BNetEx
Global Socket:TSocket Global StreamTCP:TStream Global Stream:TUDPStream Stream = New TUDPStream If Not Stream.Init() Then Throw("Can't create socket") 'Stream.SetRemoteIP(TNetwork.IntIP(DottedIP(HostIp("deinedomain.de")))) Stream.SetRemoteIP(TNetwork.IntIP(DottedIP(HostIp("localhost")))) Stream.SetRemotePort(6001) Beim Client auslesen (also wenn etwas ankommt) Code: [AUSKLAPPEN] Function ServerInstructions()
If Stream.RecvAvail() Then While Stream.RecvMsg() ; Wend If Stream.Size() > 0 Then While Not Stream.Eof() Reply:String = Stream.ReadLine() 'das is angekomm Wend EndIf EndIf End Function Das Senden zum Server Code: [AUSKLAPPEN] WriteLine Stream, "Das wird gesendet"
Stream.SendMsg() Nun Der Server: Code: [AUSKLAPPEN] Import vertex.BNetEx
Global StreamUDP:TUDPStream StreamUDP= New TUDPStream If Not StreamUDP.Init() Then Throw("Can't create socket") StreamUDP.SetLocalPort(6001) Das empfangen von daten (vom client) Code: [AUSKLAPPEN] If StreamUDP.RecvAvail() Then
While StreamUDP.RecvMsg() ; Wend If StreamUDP.Size() > 0 Then While Not StreamUDP.Eof() Ankunft:String = StreamUDP.ReadLine()'das kommt an Wend endif endif Wenn du was verschicken willst am client wirds kompli Code: [AUSKLAPPEN] StreamUDP.SetRemoteIP(TNetwork.IntIP(TNetwork.StringIP(StreamUDP.GetMsgIP()))) ports:Int = Int(StreamUDP.GetMsgPort()) StreamUDP.SetRemotePort(ports)
StreamUDP.WriteLine("Sende zum Client") StreamUDP.SendMsg() das senden zum client is nun direct zum client der angefragt hat, wenn du vor hast ein mmorpg zu machen, dann würd ich port ip, in einem type zwischensichern, z.b. port ip name name=name des gammers wenn du nun daten übermitteln willst, z.b. bewegungen musste es nur aus dem type nehm und an alle schicken, effektivier weise kannst du gern noch status mit im type nehm, also ob online oder offline gammer, sei gewarnt, ein online mmorpg kannst du nich einfach auf dein pc machen jedenfalls nich den server, sei den es sind weniger spieler, je mehr spieler desto grösser die herrausvorderung. damit wären wir beim root server. naja wie dem sei, ich nutz eig nie tcp, nochnimmals fürs login, nur ich kann dir raten, php mysql, für login pw, diese du dan abrufst mit loadstring ("HTTP::deinedomain.de/login.php") und du schaust ob der login lorreckt is, den rest kannste getrostet über udp laufen lassen. viel input funtzt aber heave fun ps. ich seh grad der übernimmt mein code nich so, strucktur deswegen bitte selbst einbaun (etwas arbeit darfste ja haben) EDIT: -#######################################- ich seh grad du willst ohne ein modul arbeiten, ich glaub dann kannste meine sachen da nicht verwenden, nur wozu ohne modul, nur weil du eventuell nich weiss wie du modulle einbinden kannst? wenn das der fall sein sollte schreib mich ruhig an. ich erkläre es gern, hinzu kommt das forum hat ne suchfunktion, die modulle werden im übrigen entwickelt oder gemacht nur um hilfen zu schaffen, oder halt um fehlende funktionen in bmax hineinzubringen, darum solltest du eventuell doch modulle verwenden grad wenns schnell gehen soll. ich hoffe die codes haben weitergeholfen und auch diese hilfestellung hilft dir vieleicht weiter. mach ma rückmeldung ^^ EDIT: aber um es nochmal zu verständlich zu machen noch mal eine kleine hilfe, SERVER = Immer gleiche DOMAIN und GLEICHER PORT (in sachen UDP) die clients jedoch nicht, darum speichere ich auch client port ab ^^ in einem type. vieleicht is das der rätzel lösung für dich. |
||
![]() |
beanage.johannes |
![]() Antworten mit Zitat ![]() |
---|---|---|
dankeschön, hilft mir sehr! | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group