inno-setup – Inno Setup – #define指令 – 如何使用以前定义的变量?

前端之家收集整理的这篇文章主要介绍了inno-setup – Inno Setup – #define指令 – 如何使用以前定义的变量?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用Inno Setup版本5.4.2。

我想定义要复制的文件的路径([Files]部分中的Source:参数为两个部分,一个基本路径和子目录名称,我用于特殊文件(如.dlls)。
我试过以下:

#define MyAppSetupDir "D:\MyApp\setup"
#define MyAppSetupQtDLLs {#MyAppSetupDir}"\DLLs"
[Files]
Source: {#MyAppSetupDir}\MyApp.exe; DestDir: {app}; Flags: ignoreversion
Source: {#MyAppSetupDLLs}\mstext35.dll; DestDir: {app}; Flags: ignoreversion

但我得到以下编译错误

[ISPP] Expression expected but opening brace ("{") found.

我也试着把括号括在“”中,喜欢

#define MyAppSetupQtDLLs "{#MyAppSetupDir}\DLLs"

但这一次我得到了

Error: Source file "D:\MyApp\setup\{#MyAppSetupDir}\DLLs\mstext35.dll" does not exist.

因此,ISSP正确地替换了MyAppSetupDir变量,但后来又放入了简单的文本,就好像它不能识别指令一样。

我已经搜索无处不在,我已经发现了一个discussion关于使用{commonappdata},但我不能找到如何做到这一点,在文档和知识库。
我真的很感激一些提示,因为它看起来我很接近,但没有找到正确的解决方案。

解决方法

#define MyAppSetupDir "D:\MyApp\setup"
#define MyAppSetupQtDLLs MyAppSetupDir + "\DLLs"

猜你在找的Delphi相关文章