【发布时间】:2016-12-10 13:02:56
【问题描述】:
我正在将应用程序从 Delphi 7 迁移到 Delphi XE5,以下是我的功能。
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;
我的错误是:'ansichar' 和 'char' delphi 类型不兼容,谁能指导我正确的方式。
【问题讨论】:
-
你做过任何研究吗?当然,您必须意识到
Char从 Delphi 2009 中的AnsiChar更改为WideChar。您需要退后一步阅读该更改。小心。而且您真的必须停止将文本视为二进制数据。真的不是。
标签: delphi migration delphi-7 delphi-xe5