Hi,
Zitat von
AJ_Oldendorf:
1. TIdUDPClient
Funktionsaufruf:
procedure Send(const AData: string); overload;
Indy Version updaten, wir haben die Encoding Wrapper bereits erweitert (ca. März 2009). Der Aufruf lautet nun:
Delphi-Quellcode:
TIdUDPClient.Send(const AData: string; AEncoding: TIdTextEncoding = nil); overload;
und
TIdUDPBase.Send(const AHost: string; const APort: TIdPort; const AData: string;
AEncoding: TIdTextEncoding = nil);
Alternativ: Eigene Klasse ableiten und Send() mit reintroduce/overload selbst korrigieren. Gleiches für UDPBase.
Zitat von
AJ_Oldendorf:
Warum wird hier überall mit der 7 Bit Codierung gearbeitet?
Weil die meisten Internet Standards für die Protokolle (RFCs) dies fordern. Es gibt einige Erweiterungen, z.B. MIME Extensions, 8BITMIME bei
SMTP etc.pp. - aber die Protokolle sind eben häufig 7bit textbasiert. Erst Erweiterungen und Neufassungen erlauben manchen Protokollen andere Encodings. Wo möglich und geboten, entscheiden die Komponenten selbst über das sinnvollste und konforme Encoding.
In Deinem Fall fehlte aber tatsächlich die Durchreichung des Encodings. Mit der aktuellen Version ist dies auch wieder implementiert.
Gruß Assertor