Ich bin eine Migration einer App von Delphi 7 nach Delphi XE5, die unten ist meine Funktion.Inkompatible Typen Fehler in Delphi
function InternalDecrypt(const S: AnsiString; Key: Word): AnsiString;
var
I: Word;
Seed: Word;
begin
Result := S;
Seed := Key;
for I := 1 to Length(Result) do
begin
Result[I] := Char(Byte(Result[I]) xor (Seed shr 8)); //Error is here
Seed := (Byte(S[I]) + Seed) * Word(C1) + Word(C2)
end
end;
Mein Fehler ist: inkompatible Typen ‚AnsiChar‘ und ‚char‘ delphi, Kann man in der richtigen Art und Weise führen Sie mich einfach.
Haben Sie überhaupt geforscht? Sicherlich müssen Sie sich darüber im Klaren sein, dass sich 'Char' von Delphi 2009 von' AnsiChar' zu 'WideChar' ändert. Sie müssen diese Änderung rückgängig machen und lesen. Vorsichtig. Und Sie müssen wirklich aufhören, Text als binäre Daten zu behandeln. Das ist es wirklich nicht. –