Inno设置:指令或参数"检查"表达式错误:符号无效'。'发现

时间:2016-09-22 16:25:23

标签: inno-setup

在我的脚本顶部,我定义了程序依赖项的版本号。

#define ProductTestsVer "4.13.0.128"

然后,我在Files函数的Check部分中使用此标识符。

Source: src\ff\ProductTests.exe; DestDir: {app}; Check: RegCheck('Software\FFNVNTest\ProductTests', {#ProductTestsVer});

然后我尝试在Check部分使用相同的Run功能,导致以下错误:

Directive or parameter "Check" expression error: Invalid symbol '.' found.

我认为我犯了一个愚蠢的错误,或者你只是不能在Run部分使用标识符,但我非常怀疑它是前者。

谢谢。

1 个答案:

答案 0 :(得分:1)

我不认为你是对的。即使在[Files]部分,该语法也不会(也不会)起作用。使用最新的Inno Setup 5.5.9(Ansi和Unicode)进行测试。

如果检查预处理器输出,您将看到语法解析为:

RegCheck('Software\FFNVNTest\ProductTests', 4.13.0.128);

这不是有效的Pascal脚本代码。你可能想要:

RegCheck('Software\FFNVNTest\ProductTests', '4.13.0.128');

所以你需要使用:

RegCheck('Software\FFNVNTest\ProductTests', '{#ProductTestsVer}');