Deutsche Umlaute über Indy TCP/IP

Alle Fragen zur Netzwerkkommunikation
Antworten
harrybonn
Beiträge: 101
Registriert: Fr 7. Jan 2011, 15:18

Deutsche Umlaute über Indy TCP/IP

Beitrag von harrybonn »

Habe da ein Problem, das krieg ich einfach nicht gelöst.

Habe ein Delphi-Server-Programm, welches über Vorgabe IOHandler.DefstringEncoding = UTF8 eine Text-Nachricht über das Netz schickt (per "Writeln")

Auf der Gegenseite wird das mit IOHandler.ReadLN gelesen (vorher auch DefstringEncoding auf UTF8 gesetzt).

Beim gleichem Source-Code:

- Der VCL-Windows-Client liest den Text, hier "PC-Adreßzz! Server" korrekt.
- Der Lazarus-Windows-Client auch.

* Aber unter MAC und Linux bricht da ReadlN bei dem deutschen Sonderzeichen "ß" ab und verschluckt den Rest.

Auch wenn ich ReadlN mit irgendwelchen Zusatz-EndodingParameter verwende, immer dasselbe.

Wie kriege ich das auch unter MAC und Linux hin?

Anmerkung: Wenn ich ganze Streams versende, kann ich die auf Client-Seite auf allen OS empfangen, richtig dekodieren und mit deutschen Umlauten verwenden. Aber will hier nicht alles auf Streams umstellen.

Edit: Benutze Lazarus 1.26

Antworten