Используйте оператор +
, так же, как вы уже используете его в своих объявлениях PSScript
и ConfigPath
.
Кроме того, функция Exec
нуждается в аргументах по отдельности.
Прочее:
1) Необходимо заключить пути в двойные кавычки, если они содержат пробелы.
2) По умолчанию препроцессору Inno Setup не требуется экранирование обратной косой черты.
#define PSScript SourcePath + "\UpdateJson.ps1"
#define ConfigPath SourcePath + "\ClientConfig.json"
#expr Exec("PowerShell", \
"-NoProfile -ExecutionPolicy Bypass -File """ + PSScript + """ " + \
"""" + ConfigPath + """ " + Str(BuildNumber))