logo
logo
Почему? А вот почему... [Viacheslav 22/11/2002 07:23]
А вы вот подойдите к данному вопросу не со стороны не как программист, а как простой пользователь, и что вам будет удобнее:
1. Что легче править, ini файл или копаться в реестре? А иногда есть необходимость быстро поправить настройки ручками.
2. Я уже поднимал вопрос, что случаются варианты, когда людям приходится работать с НЕ АДМИНОВСКИМИ правами, и соответственно с ЗАПРЕТОМ внесения изменений в системный реестр. И как следствие программа отказывается работать.
3.Снимается необходимость в инсталяции, скопировал все на дискету, перенес на другую машину и все ОК! Работает, а представьте, если все данные настроек находятся в реестре? Это каждый раз  инсталировать программу нужно? Геморрой...
4.Если на то пошло, можно уменьшить трудозатраты программиста на написание допролнительных прибамбасов сохранения и изменения настроек, проще как в Опере сделано, есть ini файл и есть описание, что какой параметр значит, что нужно, можешь и сам изменить.
 
Так что, я поддерживаю Dervish-а : в данном случае, локальный файл настроек лучше чем реестр!
 
Dervish: В общем, всё верно. Только меня тут активно убеждают ini-файл хранить в Application Data, тогда не будет проблем с доступом к папке Program Files. Но тогда будет сложнее переносить программу (вместе с настройками) с дискеты на дискету.
 
Добавлено 27.11.2002:
Наверное, всё-таки придётся писать настройки в реестр. Аргументация такова: для ini-файла очень сложно выбрать место, где его располагать. Папка самой программы в "Program Files" может быть недоступна для записи (если программа запускается не-администратором под Windows`NT), папка "Application Data" вообще может отсутствовать на компьютере, да и, в общем случае, сама программа может запускаться с CD-ROM.
 
Что касательно переноса программы на другой компьютер, можно сделать так, чтобы отсутствие настроек в реестре не мешало запуску программы, чтобы программа использовала все настройки по-умолчанию.
 
Единственная проблема, которая остаётся при таком подходе проявляется, когда программа использовалась на одном компьютере разными пользователями (с разными логинами). В этом случае в реестре останутся ключи, которые не будут удалены при деинсталяции программы. Но совершенно аналогично, невозможно будет удалить все файлы настроек из всех папок "Application Data".
 
Эти мысли возникли в результате обсуждений с Артёмом Фёдоровым, за что ему огромное спасибо.