将函数返回值赋给字符串时,Inno Setup类型不匹配

时间:2016-09-30 17:39:23

标签: inno-setup pascal

我的Inno设置中有以下功能:

function GetSerialNumber(ADelimiter: Char): string;
var
  I: Integer;
begin
  Result := '';
  for I := 0 to GetArrayLength(SerialEdits) - 1 do
    Result := Result + SerialEdits[I].Text + ADelimiter;
  if GetArrayLength(SerialEdits) > 1 then
  begin
    Delete(Result, Length(Result), 1);
  end
end;

在下面的另一个函数中,我有一个名为Serial: string的变量,但是当我做

Serial := GetSerialNumber('');

我遇到类型不匹配错误,有人知道我做错了什么吗?谢谢!

1 个答案:

答案 0 :(得分:4)

问题不是返回值,而是参数。

''不是有效的char字面值。 char文字必须正好是一个字符长。 ''string

如果要允许空分隔符,请将参数类型更改为string