NSIS-как отправить параметр из командной строки в файл nsi

#nsis

#nsis

Вопрос:

Я новичок в скрипте NSIS. Я хочу отправить номер версии в свой файл test.nsi, но он не работает. Внутри моего файла test.nsi значение version равно: test.nsi. Каков правильный синтаксис для этой команды?

«C:Program FilesNSISmakensis.exe » -DVERSION=1.2.1 тест.nsi

Спасибо,

Jdang

Ответ №1:

Документация довольно понятна

http://nsis.sourceforge.net/Docs/Chapter3.html

Вы должны использовать /, а не — для префикса имени параметра, чтобы ваша команда стала

 "C:Program FilesNSISmakensis.exe" /DVERSION=1.2.1 test.nsi
  

Комментарии:

1. Я попробовал эту опцию, но внутри файла test.nsi я все еще вижу значение !echo $VERSION равно test.nsi

2. Я попробовал эту опцию, но внутри файла test.nsi я все еще вижу значение !echo $VERSION равно test.nsi . Каков правильный синтаксис для ссылки на переменную ВЕРСИИ в этом случае? $VERSION ??

3. Чтобы ссылаться на значение версии внутри файла test.nsi, вы должны использовать $ {VERSION}, а не $VERSION, поскольку это «определение», а не переменная

4. Убедитесь, что ваш . Ссылка на файл NSI является последним параметром в командной строке.

5. @BrettVeenstra Вы понятия не имеете, сколько времени я потратил на проблему, прежде чем попробовать ваше решение. Спасибо, спасибо за этот маленький лакомый кусочек, который я никогда не забуду 🙂 Я не понимал, что порядок имеет значение при вызове.