我正在將Delphi 5應用程序遷移到Delphi XE3。我在編譯時遇到了一些錯誤。有人可以幫助我解決這些問題嗎?提前感謝您的幫助。如何解決Delphi XE3遷移錯誤?
我無法在XE3中找到函數
OemToChar
的定義。當我按Ctrl +點擊該功能時,它顯示消息Unable 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;
謝謝大衛。以上所有錯誤都解決了我肯定會閱讀那篇論文。 – Nalu