![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем здравствуйте,
вопрос такой, есть программа, хочу сделать хранение некоторых параметров программы, вопрос в том какой лучше способ для этого выбрать:
Программа небольшая и параметров у нее не много (пару настроек вкл\откл некоторых чекбоксов), я больше склоняюсь к реестру, так как пользователь запуская софтину и какие бы он права в системе не имел то в любом случае настройки я смогу сохранить к HKLU так как пользователь является ее владельцем. Но я сомневаюсь с точки зрения оптимизации (хотя какая может быть оптимизация у проги весом в 200Кб и пару параметров) но все же, где лучше хранить настройки? |
#2
|
||||
|
||||
![]() Лично я противник записи в реестр, т.к. итак он завален хламом.
Я предпочитаю INI-файл. Если вы воспользуетесь стандартным классом TIniFile то он и так будет в текстовом формате. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
![]() Ваш вопрос ни о чем. Настройки должны быть скрыты от лишних глаз? Что вы храните в настройках? Создавайте текстовый файл и не мучайте ни себя ни других
|
#4
|
|||
|
|||
![]() Цитата:
Возможно, но учитывая то что при запуске программы ЛЮБЫМ пользователем, будут подниматься настройки из одного файла конфигурации, при использовании реестра этого можно избежать... |
#5
|
|||
|
|||
![]() А что-то я не вижу что бы вы в своем первом посте при описании вашей проблемы указали на такой нюанс что вы желаете что бы программа имела настройки для каждого пользователя отдельно, а не настройки программы как таковой.
|
#6
|
|||
|
|||
![]() Цитата:
|
#7
|
|||
|
|||
![]() Цитата:
Ну тут вариантов миллион. Зависит уже от фантазии чисто. 1) Если программа имеет ЧЕТКОЕ кол-во настроек, то есть 5 параметров и всё тут. Саздаете типизированный файл c типом записи Код:
Rec = Record User : String[20]; param1,param2,param3.... paramN : String[10]; end; 2) Можете создать рядом с программой папку аккаунтов, и там создавать на каждого текстовый файл, если кол-во настроек не известно заранее. вариантов куча,что бы выбрать более адекватный надо точно знать ситуацию |
#8
|
|||
|
|||
![]() Ок, спасибо за подсказку, приму к сведению....
|
#9
|
||||
|
||||
![]() Для личных данных существует папка "%AppData\ProgramName\"
Реестр тоже отличный вариант, что тебя смущает? ...сказал, и загрустил от бесспорной своей правоты |
#10
|
|||
|
|||
![]() Цитата:
Смущает только реализация, не могу обрисовать в голове схему сохранения настроек (именно будильников) в реестре. Вижу примерно так: Есть ветка с моей программой (к примеру HKEY_CURRENT_USER\Software\MyAlarm) соответсвенно там будут храниться настройки программы (к примеру - Settings) и непосредственно "таски" (к примеру - Tasks)... Как я себе это представляю, при создании нового "таска" создается подраздел ветки Tasks к примеру Task01 (в которой уже будут зраниться такие параметры как Имя таска, время срабатывания таска и т.д.), тогда встает вопрос как реализовать счетчик (генерирующий соотвествующий раздел Task01, Task02 и т.д.). Сами таски можно отражать в ListBox'е... но я упираюсь именно в "порядковую" генерацию соотвествующей ветки для каждого таска... Или тоже самое с папками... |
#11
|
||||
|
||||
![]() ну тогда храни в %AppData\ProgramName\ на каждую задачу создавай файл (ini или просто текстовой). Имена гененируй на основе текущей даты-времени.
...сказал, и загрустил от бесспорной своей правоты |
#12
|
|||
|
|||
![]() Цитата:
|