08. juni 2002 - 17:37Der er
3 kommentarer og 1 løsning
dedicated server ?????
jeg er igang med at lave et netværks spil, men i stedet for både at lave et serverprogram, en client og en dedicated server har jeg prøvet at "bygge" den dedicated server sammen med en client. Jeg har bare nogle problemmer med at den sætter nogen af de sendte kommandoer sammen, så spillet ikke "forstår" det. jeg bruger winsock-componenter. TCP/IP det der sker at serveren først sender "CHECK" og bagefter "TEST", men det der kommer frem til clienterne er "CHECKTEST" hvordan undgår man det ?????? og hvad gør jeg forkert. På Forhånd Tak :)
I lang tid har samarbejdsbranchen fokuseret på at forbedre enhedsfunktioner – bedre kameraer, klarere lyd og smartere software. Men den virkelige forvandling handler ikke om funktioner.
En TCP forbindelse er en såkaldt 'byte-stream' hvilket vil sige, at selv hvis afsenderen sender data i flere adskilte operationer, kan det sagtens forekomme, at modtageren modtager dem i een sammenhængende klump. Det der skal til er, at afsender og modtager bliver enige om en konvention til at separere forskellige 'records'. Den simpleste er nok noget med at første byte indeholder længden af den efterfølgende 'record'.
Jeg har ikke forstand på winsock, men jeg har da en idé til hvordan du adskiller tekststrengene. Du kan indsætte et tegn som du ikke vil bruge i dit spil, som fx | . Når du så sender en tekststreng, skriver du bare: "CHECK|"
I dit modtager program laver du så en separere prosedure, hvor du adskiller alle | ...
Det kunne du jo lave sådan her:
-------START-------- Private Sub Command1_Click() Dim Tekst As String Tekst = Text1.Text ' Den tekst som du modtager
Dim Teksts(100) As String Dim Hvilken As Integer
For n = 1 To Len(Text1.Text)
If Mid(Tekst, n, 1) <> "|" Then Teksts(Hvilken) = Teksts(Hvilken) & Mid(Tekst, n, 1) Else Hvilken = Hvilken + 1 End If
Next n
Text1.Text = ""
For n = 0 To Hvilken Text1.Text = Text1.Text & Teksts(n) & " " Next n
End Sub -------SLUT--------
Bemærk, at i mit program bruger jeg en textbox. Den textbox skal bare erstattes med den tekst som programmet modtager. Til sidst (i den sidste for next løkke) skriver jeg bare teksten i textboxen igen. Det skal du kun bruge hvis du vil have dine arrays med tekstindhold skrevet ud....
Hvis man sender længden med (som ovenfor nævnt), behøver man ikke at søge.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.