我正在将我的 Delphi 5 应用程序迁移到 Delphi XE3。我在编译时遇到了一些错误。有人可以帮我解决这些问题。提前感谢您的帮助。
我无法
OemToChar
在 XE3 中找到函数的定义。当我 Ctrl+单击该功能时,它会显示 messageUnable to locate 'WinAPI.Windows.pas'
。我无法打开任何 delphi 组件文件。windows.pas 在系统上的位置是什么?或如何解决?Incompatiable Types: 'PAnsiChar' and 'PWideChar'
在下面的函数中与OemToChar(p1, p2)
.
function OemToAnsi(const Str: string): string;
var
p1,
p2: PChar;
begin
p1 := PChar(Str);
p2 := StrNew(p1);
OemToChar(p1, p2);
Result := StrPas(p2);
StrDispose(p2);
end;
'Low Bound Exceeds High Bound'
在以下代码中出现错误。
function StrToRichText(const Str: string): string;
var
i: integer;
begin
Result := '';
for i := 1 to Length(Str) do
begin
case Str[i] of
#128 .. #255 :
Result := Result + '\''' + LowerCase(IntToHex(Ord(Str[i]), 2));
'\','{','}':
Result := Result + '\' + Str[i];
else
Result := Result + Str[i];
end;
end;
end;