Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Где хранить настройки программы?


GlobalVariable ©   (2008-10-06 10:11:00) 

Всем привет.
Где удобнее(правильнее?) сохранять текущие настройки программы? Т.е. есть инифайл или ветка в реестре. Куда мне загружать их? Сделать глобальную переменную record? Или где? Или объект сделать?


123-ий   (2008-10-07 07:53:00) [1]

ини


Anatoly Podgoretsky   (2008-10-06 21:06:00) [2]

> Правильный$Вася  (06.10.2008 20:36:07)  [7]

Если это не W9x то это не преимущество, поскольку нет разницы. Преимущество в изначально иерархической структуре реестра, эффективностью работы, развитыми данными, например двоичные не проблема. Нет проблемы и с региональными настройками.


Правильный$Вася   (2008-10-06 20:36:00) [3]

уточню

> MsGuns ©   (06.10.08 11:49) [3]

1. Реестр
Преимущества: если у каждого юзера свои настройки, то это удобнее ini-файла, при этом другой юзер ничего не сможет исправить
2. Ини-файл:
Недостатки: если программа устанавливается админом, то папка с рядом лежащим ини должна иметь права на запись каждому пользователю, иначе у каждого юзера будет свой ини в documents and settings, а это геморройнее реестра


GlobalVariable   (2008-10-06 19:23:00) [4]


> MsGuns ©   (06.10.08 11:49) [3]

учитывая, что делаю клиент-сервер, то, пожалуй, засуну в БД.
всем спасибо.

Только, вот, эта.... Возможно я вопрос некорректно задал: меня интересует как хранить настройки в оперативной памяти? Скажем, настройка двух разных типов поведения некоего объекта. Не считывать же мне ее каждый раз из ини/реестра/БД? В чем хранить? В объекте, или глобальной переменной? Или как их положено хранить? Кол-во настроек неизвестно(тз пополняется по мере развития проекта).


{RASkov}   (2008-10-06 14:28:00) [5]

> Недостатки: легко правятся или даже удаляются пользователем,
> не рекомендуется хранить в настройках слишком много данных,
> необходимость при перемещении приложения "тащить" вместе
> с ним и ини-файл

А может это даже и преимущество, а? :)


clickmaker   (2008-10-06 11:59:00) [6]

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


MsGuns   (2008-10-06 11:49:00) [7]

1. Реестр
Преимущества: настройки спрятаны и защищены от зловредного или нерадивого пользователя, не зависят от местоположения программы.
Недостатки: захламление реестра и необходимость "своей" записи реестра для каждого приложения, не рекомендуется хранить в настройках слишком много данных
2. Ини-файл:
Преимущества: не захламляет реестр, независимость разных ини-файлов друг от друга так как они хранятся в папке с приложением - что позволяет иметь на одном компе несколько версий одного и того же приложения
Недостатки: легко правятся или даже удаляются пользователем, не рекомендуется хранить в настройках слишком много данных, необходимость при перемещении приложения "тащить" вместе с ним и ини-файл
3. База данных
Преимущества: неограниченный объем данных и высокая скорость обработки, независимость от местоположения приложения, в т.ч. позволяет хранить его на сетевом ресурсе, что очень удобно для приложениий, подвергающихся частой модификации т.к. нет потребности в деплое, полная защита от пользователя. Настройки сохраняются даже при переустановке ОС. При условии хранения БД на сетевом ресурсе настройки действуют для пользователя с какого бы ПК он не запускал приложение
Недостатки: установка собственно СУБД и всего с нею связанного. Более сложный код доступа к настройкам. Сильно усложненная процедура деплоя на удаленных (не подключенных к ЛВС) ПК
4. Ресурсы - черт его знает - не делал :)


Vlad Oshin   (2008-10-06 11:34:00) [8]

я бы ини/рекорд/(xml :)) выбрал, зачем реестр дуть..


Сергей М.   (2008-10-06 10:16:00) [9]


> есть инифайл или ветка в реестре. Куда мне загружать их?


Куда хочешь, туда и загружай.
При прочих равных условиях разницы нет никакой.


Наверх

Титульная страница Поиск, карта сайта Написать письмо