Schickt nur einmal daten. TCP

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Dottakopf

Betreff: Schickt nur einmal daten. TCP

BeitragFr, Jun 06, 2008 12:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Blitzer!

Ich wollte mich mal ein bisschen mit den netzwerkfunktionen von bb vertraut machen, und hab mich mal an die blitzforum hilfe gesetzt. Einen Server Geschreiben und einen Client dazu.

Der client soll mit hilfer einer input funktion text an den server schicken welcher mir dan dort angezeigt wird.
Allerdings funktioniert das nur 1 mal. Aber warum ?


hier der server:

Code: [AUSKLAPPEN]

Graphics 800,600,16,2
SetBuffer BackBuffer()

AppTitle "server"


gameserver = CreateTCPServer(9000)


Repeat
Cls

   
   datenfluss$ = AcceptTCPStream(gameserver)
   
   If datenfluss Then
      
      Paket$ = ReadLine(datenfluss)

   End If
   
   Text 10,10, "" + paket
   
   




Flip
Until KeyHit(1)
CloseTCPServer(gameserver)


Der Client dazu:

Code: [AUSKLAPPEN]

AppTitle "client"


Datenfluss = OpenTCPStream("192.168.100.200",9000)


   Repeat

         msg$ = Input(">> ")
         WriteLine datenfluss,msg
         


   Until KeyHit(1)



CloseTCPStream(datenfluss)




Sitz ich grad auf da Leitung oder ist das totaler bull shit ?

mfg
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!
 

Dreamora

BeitragFr, Jun 06, 2008 12:28
Antworten mit Zitat
Benutzer-Profile anzeigen
1. AcceptTCPStream gibt ne Int zurück, nicht nen String also weis es nicht falsch zu
2. Du vernichtest den Stream nach dem ersten mal lesen indem du ihn beim nächsten mal einfach überschreibst mit 0 (da keine neue verbindung rein kommt). Da musst du schon anfangen streams zu verwalten oder die stream annahme wenn nur der 1 client connecten soll aus der loop raus nehmen
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Dottakopf

BeitragFr, Jun 06, 2008 13:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Ahh okey


also ich konnte es jetzt so zum laufen bringen:
Code: [AUSKLAPPEN]

Graphics 300,300,16,2
SetBuffer BackBuffer()

AppTitle "server"


gameserver = CreateTCPServer(9000)



Repeat
datenfluss = AcceptTCPStream(gameserver)
Until datenfluss <> 0



Repeat
Cls


      paket$ = ReadLine(datenfluss)
      If paket <> "" Then msg$ = paket
   
   
       Text 10,10, "-> " + msg
   
   



Flip
Until KeyHit(1)
CloseTCPServer(gameserver)





hm vielleicht sollte ich mich mal an nen biligen chat ranwagen?
Weis einer schnell so ausm kopf raus a gutes tut dafür?
oder einen groben aufbau ?

Ich denk mal ich muss jedem client irgend ne ID zuweisen und der server muss dann an die IDs die nachrichten zuweisen. Mit nem Type bestimmt gut umsetzbar.

danke !
mfg Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group