«Exec» в определенную папку - PullRequest
3 голосов
/ 04 июня 2010

Из скрипта NSIS (например, расположенного в C:\nsis\) я выполняю внешнюю программу (скажем, something.bat) с некоторыми параметрами:

Exec '"Z:\draft\something.bat" $param1 $param2'

something.bat предполагается для переименования каталога C:\nsis. У меня вопрос, как я могу сказать Exec запустить something.bat внутри Z:\draft\, а не C:\nsis\? Потому что иначе он не может переименовать каталог.

Спасибо.

1 Ответ

2 голосов
/ 04 июня 2010

Вы можете использовать SetOutPath , чтобы установить текущий рабочий каталог. Я думаю, что должен делать то, что вы хотите.

В документации NSIS вы также можете видеть, что она использует переменную, которую SetOutPath устанавливает (которая $OUTDIR) для Exec операторов.

4.9.1.2 Exec

Exec команда
Выполнить указанное Запрограммируйте и продолжайте немедленно. Заметка что указанный файл должен существовать на целевая система, а не компиляция система. $ OUTDIR используется для рабочий каталог.

...