26. maj 2001 - 14:24Der er
11 kommentarer og 2 løsninger
Sende objekt over socket
Jeg sender et objekt over socket. Dette objekt er helt statisk, og fylder 5152 bytes, men min socket på klienten læser kune ca. 3800 bytes og stopper læsningen og kører videre i programmet, uden fejl...
Alle attributter i objektet er statiske. Jeg har et andet objekt der går fint, som også er statisk.
Er din socket skrevet med C system kald? For så kan det ikke lade sig gøre. objekter, string og templates kan ikke overføres på den måde da C sproget jo ikke har dem implementeret. Derimod skal du hellere går over til et struct objekt, det vil nok virke....måske.
mickni33 >> Sockets behøver da ikke kende mine objekter! Den tager det bare som en strøm af bytes fra hukommelsen. Først på server side når man lægger disse bytes i rammen, skal programmet kende objektet i forvejen.
Nej det tror jeg ikke, for jeg prøvede at sende noget over som kun indholdte integer til at starte med det virkede godt nok, men lige så snart jeg ville overføre en template, T array[] så gik der lort i den. og ligesådan gik det da jeg prøvede et objekt der havde integers og strings. Jeg har gjort det at jeg skriver resultatet af en select statement ned på en fil derefter henter jeg statement resultatet char by char ind igen og write() tilbage til clienten igen, så har en buffer der tager imod. (virker ikke 100% endnu, laver rapport)
Ja helt bestemt..Man burde egentlig have fået besked på, at være opmærksom på ulempen ved at blande C/C++ så kunne man have sparet en masse og have lavet det på \'den grimme måde\' :) Men det burde sku kunne laves smartere.....Irriterende.
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.