将函数 return 值分配给字符串时,Inno Setup 类型不匹配
Inno Setup type mismatch when assigning function return value to a string
我的 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('');
我收到类型不匹配错误,有人知道我做错了什么吗?谢谢!
问题不在于 return 值,而在于参数。
''
不是有效的 char
文字。 char
文字的长度必须正好是一个字符。 ''
是 string
。
如果要允许空分隔符,请将参数类型更改为 string
。
我的 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('');
我收到类型不匹配错误,有人知道我做错了什么吗?谢谢!
问题不在于 return 值,而在于参数。
''
不是有效的 char
文字。 char
文字的长度必须正好是一个字符。 ''
是 string
。
如果要允许空分隔符,请将参数类型更改为 string
。