1:采用String 类型定义的函数:以下正常
Function TForm1.MyStrToHex(Str:String):String;
var
    i:Integer;
begin
    for i:=1 to Length(Str) do
        Result:=Result+IntToHex(Ord(Str[i]),2);
end;
//反过来变成汉字
Function TForm1.MyHexToStr(Hex:String):String;
var
    i:Integer;
begin
    for i:=1 to Length(Hex) div 2 do
        Result:=Result+Chr(StrToInt('$'+Hex[2*i-1]+Hex[2*i]));
end;2:采用WideString 类型定义的函数:以下错误
Function TForm1.MyStrToHex(Str:WideString):WideString;
var
    i:Integer;
begin
    for i:=1 to Length(Str) do
        Result:=Result+IntToHex(Ord(Str[i]),2);
end;
//反过来变成汉字
Function TForm1.MyHexToStr(Hex:WideString):WideString;
var
    i:Integer;
begin
    for i:=1 to Length(Hex) div 2 do
        Result:=Result+Chr(StrToInt('$'+Hex[2*i-1]+Hex[2*i]));
end;问题:第2段代码为什么错误呢???