Hab ich das jetzt richtig verstanden ???
Du hast einem UTF8-String direkt ein Sonderzeichen (z.B. das ö) untergeschoben und diesen "defekten" UTF8-String dann an UTF8toAnsi übergeben, worauf dieser Funktion dann natürlich abgestürtzt ist?
Delphi-Quellcode:
Var S: String;
D: PWideChar;
S := 'ö';
Utf8ToUnicode(D, 1, PChar(S), 1);
Na kein Wunder, dass diese Funktion so reageirte ... schau dir lieber mal das Format eines UTF8-Strings an ... ein UTF8String ist
kein AnsiString