Тема: Как работает функция GetEnvironmentVariable()?

Уважаемые знатоки, возник еще один интересующий вопрос!
Предположем, существует 3 поля ввода, в которые вводится путь сохранения чертежа, и необходимо чтоб после завершения выполнения программы и новом её запуске, в этих полях ввода оставался тот путь по которому происходило последнее сохранение. Логично, что для этого необходимо куда-нибудь эти значения сохранять? Кто что может посоветовать? Создавать каждому юзеру на сервере инишник, в который будет все сливаться не дело ИМХО. Есть еще мыслишка сохранять в переменную среды Windows - %HOMEPATH% - основной каталог пользователя.
p.s. Может кто-нибудь подсказать как работает функция GetEnvironmentVariable()?

Re: Как работает функция GetEnvironmentVariable()?

Не надо ничего изобретать, надо пользоваться технологией, которую диктует Microsoft.
1. Никаких INI. А если уж очень надо, для каких-то редко изменяемых настроек, то INI непременно размещать в ApplicationData для своей программы и для пользователя (возможно, в AllUsers).
2. Все текущие настройки, которые надо запоминать и восстанавливать - в ветку своей программы в HKCU. Только сюда, и никуда более (читать можно из HKLM).
В Delphi удобно воспользоваться компонентами JvAppRegistryStorage и TJvFormStorage из библиотеки Jedi VCL. Элементарно сохраняются любые состояния любых компонентов, очень легко задается сохранение и восстановление любых собственных переменных.
3. Лезть в переменные WINDOWS  вообще незачем. Если каждая приблуда там будет что-то писать, такое будет...
Все это предназначено для тех, кто желает, чтобы программы работали на любой машине и без присутствия автора.