ich habe noch einen Schmerzen, wo ich dazu kein Beispiel gefunden habe. Ich bekomme über einen Port Text rein und will den weiter verarbeiten. Wie mach ich das, daß ich den kompletten Text nachher in einer Stringvariablen habe?
Mein Versuch sieht so aus. Allerdings bleibt da immer der alte Text im Buffer und wird nur vorne durch neuen Text ersetzt - bei einem weiteren Aufruf dieser Funktion - wird ausgelöst durch ein "NetworkServerEvent() = 2". Auch das "ReAllocateMemory" nützt nichts.
Code: Alles auswählen
Procedure HoleNetzwerkDaten()
; --- Text Puffer freimachen
BufferText = ""
; --- und den ersten Text holen
Ergebnis = ReceiveNetworkData(NetworkID, *Buffer, BufferLaenge)
; --- im Text Puffer ablegen
BufferText = PeekS(*Buffer, BufferLaenge - 1)
; --- ist noch mehr an Daten da ?
While Ergebnis = BufferLaenge
; --- dann abholen
Ergebnis = ReceiveNetworkData(NetworkID, *Buffer, BufferLaenge)
; --- und in den Text Puffer schreiben
BufferText = BufferText+PeekS(*Buffer, BufferLaenge - 1)
Wend
; --- dann alles putzen
BufferText = ReplaceString(BufferText,Chr(13),"")
BufferText = ReplaceString(BufferText,Chr(10),"")
; --- Buffer loeschen
ReAllocateMemory(*Buffer, BufferLaenge)
; --- Resultat rausgeben
ProcedureReturn BufferText
EndProcedure
Viele Grüße
Sigi