2010-01-08 6 views
6

На первый взгляд это кажется чисто субъективной/эстетической проблемой, но мне было бы интересно услышать мнения (особенно любые технические) о том, являются ли переменные среды или реестр предпочтительным местом для хранения данных конфигурации в среде Windows.Переменные реестра Windows и переменные среды?

я могу в настоящее время думать только о следующих отличиях:

  • параметры реестра являются постоянными для всех сеансов, хотя я считаю, что переменные окружения могут также обладать этим свойством.
  • легче установить переменные окружения из командной строки по сравнению с использованием regedit
    • (Counter-аргумент: regedit проще без командной строки приложений?)
  • Переменные среды являются более распространенными через платформы (?).

Я также знаю, что переменные окружения могут быть опрошены, изменены и установлены из реестра.

ответ

4

Использовать переменные окружения, когда вы собираетесь быть настроены другими приложениями (или техническим пользователем), и что эта конфигурация может отличаться (то есть у вас есть 2 экземпляров, выполняющихся в то же время, с разными настройками). Обычно не требуется загромождать пользовательскую среду. В большинстве случаев используйте реестр или файл конфигурации, хранящийся в $ HOME \ AppData \ Roaming \ YourApp.

0

При использовании служб Windows переменные среды могут быть больны: просто изменить переменную, а затем перезапустить службу не поможет. Обычно необходимо перезапустить систему.
Если служба ищет настройки в реестре, это намного проще.

Я видел это поведение в Windows XP, я не уверен, что более поздние версии разрешили эту проблему.

Смежные вопросы