Я использую Inno Setup версии 5.4.2.
Я хочу определить путь для копируемых файлов (параметр Source: в разделе [Files] состоит из двух частей: базового пути и подпрограммы-директории, которые я использую для специальных файлов (например, .dll). Я пробовал следующее:
#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, но затем снова помещает простой текст,как будто он не распознал директиву.
Я искал везде, и я уже нашел обсуждение об использовании {commonappdata}
, но я не мог найти, как это сделать, нини в документации, ни в КБ. Я был бы очень признателен за некоторые подсказки, поскольку, похоже, я близок, но не могу найти правильное решение.