Hallo,
danke für die antworten. ich habe mal etwas zeit gefunden mich wieder dem problem zuzuwenden...
@XXcD: Hatte erst Delphi 2009 benutzt, sind aber wieder auf Delphi 7 umgestiegen - jedoch wurde in diesem Zug auch die
Indy geupdatet...
@Valle: korrekt ü -> u, Ä -> A usw. Beide von mir in Delphi 7 geschrieben.
Es hat was mit dem
Indy update zu tun (Client und Server liefen vorher ohne diese Problem). Ich konnte auch die Sourcezeile lokalisieren. In der
Unit IdGlobal Line 1555:
Delphi-Quellcode:
class function TIdTextEncoding.Convert(ASource, ADestination: TIdTextEncoding; const ABytes: TIdBytes): TIdBytes;
begin
Result := ADestination.GetBytes(ASource.GetChars(ABytes));
end;
Der TIdTCPClient - genauer gesagt TIdTCPConnection - ruft diese function vor dem senden auf. So wird aus
78, 97, 109, 101, 61, 77,
252, 108, 108, 101, 114, ....
78, 97, 109, 101, 61, 77,
117, 108, 108, 101, 114, ....
Stack*:
TIdTextEncoding.Convert($7EA2E10,$7EA2DD0,(78, 97, 109, 101, 61, 77, 252, 108, 108, 101, 114, xxxxx))
ToBytes('Name=Müllerxxxxx'#$D#$A,-1,1,$7EA2DD0,$7EA2E10)
TIdIOHandler.Write('Name=Müllerxxxxx'#$D#$A,$7EA2D D0,$7EA2E10)
TIdIOHandler.WriteLn('Name=Müllerxxxxx',$7EA2DD0,$ 7EA2E10)
TIdIOHandler.WriteLnRFC('Name=Müllerxxxxx',$7EA2DD 0,$7EA2E10)
TIdIOHandler.WriteRFCStrings($6D36508,True,$7EA2DD 0,$7EA2E10)
TIdTCPConnection.WriteRFCStrings($6D36508)
*Name teilweise ge-xt ^^
Wie geht das mit den Encoding? Wo stellt man das ein?
Danke und Shalom