Re: AccessViolation bei Parameterübergabe (RecieveBuf)
18. Dez 2005, 14:52
1. String ist nur eine Adresse - entweder du definierst dir String[200] oder ShortString in deinem Record oder du schreibst den String selber in den Socket - dann sind die Packetlängen aber variiabel.
2. Du versuchst im Accept etwas aus dem Socket zu lesen - Accept ist doch aber nur die Rückmeldung, dass der Verbindungsaufbau von der Gegenseite akzeptiert wurde und somit noch kein Hinweis, das schon Daten empfangen wurden und somit auslesbar sind.
3. Du empfängst mit ReceiveBuf() einen Record aber schaust nichtmal nach, ob er komplett empfangen wurde (Rückgabewert von ReceiveBuf()). Es kann sehr gut sein, dass
a) gar keine Daten bisher empfangen wurden.
b) nicht genügend Daten empfangen wurden (also weniger als SizeOf(DeinRecord))
|