Я пытаюсь создать установщик с Inno Setup, который будет статически включать папку, если она существует. Эта папка будет установлена в системе пользователя, если в системе пользователя уже существует определенный каталог.
Например, есть конфигурации, специфичные для 2017, 2018, 2019. Если у есть папка a CC2017
, включите ее в установщик. Установщик поместит папку в системе пользователя в папку 2017 года, если она существует.
Я использую переменные, чтобы определить некоторые пути, и отформатировал их без скобок, основываясь на ответе здесь .
#ifexist projpath + "\" + reponame + "\Plug-Ins\Windows\CC2017\"
Source: "{#projpath}\{#reponame}\Plug-Ins\Windows\CC2017\{#pluginname}\*"; \
DestDir: "{sd}\Program Files\Adobe\Adobe InDesign CC 2017\Plug-Ins\{#pluginname}"; \
Flags: ignoreversion recursesubdirs createallsubdirs replacesameversion; \
Check: MyDirCheck(ExpandConstant('{sd}\Program Files\Adobe\Adobe InDesign CC 2017'))
#endif
Я знаю, что проверка выполняется неправильно, поскольку размер файла намного меньше, когда я добавляю директивы ifexist
. В Inno Setup docs упоминаются "файлы", но не папки, поэтому я подозреваю, что он может не поддерживать проверку папок.
Что не так с синтаксисом?
Я использую Inno Setup 6.0.2 на Mac 10.13.6