Хобрук: Ваш путь к мастерству в программировании

NSIS: использование переменной среды во время компиляции?

Если я не ошибаюсь, все обсуждение переменных среды (EV) в NSIS docs (например, ReadEnvStr), работа с EV на целевом компьютере: все происходит во время установки.

Интересно, есть ли какая-либо поддержка доступа к EV на машине разработчика (сборки) во время компиляции. В частности, предположим, что у меня есть

!define SRCDIR "C:\progs\version1\src"

...
File /r "${SRCDIR}\*.*" 

а я лучше напишу

!define SRCDIR "%{PROG_DIR}\src"

(или что-то подобное), где PROG_DIR — переменная окружения. Можно ли это сделать?


Ответы:


1
!echo "$%temp%"

Я почти уверен, что это где-то задокументировано.

22.01.2014
  • Что ж, это было действительно просто, но я нигде не нашел документального подтверждения (и даже упоминания об этом различии между переменными env на целевом компьютере и компьютере сборки). Это работает, спасибо. 23.01.2014
  • Это задокументировано в разделе 5.3 Чтение переменных среды. 02.12.2019
  • Новые материалы

    Я собираюсь научить вас Python шаг за шагом
    Привет, уважаемый энтузиаст Python! 👋 Готовы погрузиться в мир Python? Сегодня я приготовил для вас кое-что интересное, что сделает ваше путешествие более приятным, чем шарик мороженого в..

    Альтернатива шаблону исходящих сообщений для архитектуры микросервисов
    Познакомьтесь с двухэтапным сообщением В этой статье предлагается альтернативный шаблон для папки Исходящие : двухэтапное сообщение. Он основан не на очереди сообщений, а на..

    React on Rails
    Основное приложение Reverb - это всеми любимый монолит Rails. Он отлично обслуживает наш API и уровень просмотра трафика. По мере роста мы добавляли больше интерактивных элементов..

    Что такое гибкие методологии разработки программного обеспечения
    Что представляют собой гибкие методологии разработки программного обеспечения в 2023 году Agile-методологии разработки программного обеспечения заключаются в следующем: И. Введение A...

    Ториго  — революция в игре Го
    Наш следующий вызов против ИИ и для ИИ. Сможет ли он победить людей в обновленной игре Го? Обратите внимание, что в следующей статье AI означает искусственный интеллект, а Goban  —..

    Простое развертывание моделей с помощью Mlflow — Упаковка классификатора обзоров продуктов NLP от HuggingFace
    Как сохранить свои модели машинного обучения в формате с открытым исходным кодом с помощью MLFlow, чтобы позже получить возможность легкого развертывания. Сегодня модели упаковки имеют несколько..

    Математика и интуиция - Часть 1
    У каждой математической формулы есть доказательство. Часто эти доказательства слишком сложно понять, поскольку многие из них основаны на индукции, некоторые - на очень сложных наблюдениях, а..