Объявление

Односложные и бессмысленные темы, не несущие полезную нагрузку или не содержащие в себе вопрос, будут удаляться!

#1 03-07-10 22:14:44

Luca
Участник
Здесь с 03-09-09
Сообщений: 1,545

Где приложения должны хранить свои настройки?

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

Может стоит сделать все приложения портативными и хранить все настройки в их папках?

Кто за, кто против?

Вне форума

#2 03-07-10 22:23:24

Svart Testare
Великий Человек
Откуда: Вселенной
Здесь с 05-10-09
Сообщений: 5,481
Сайт

Re: Где приложения должны хранить свои настройки?

Luca,
Приложения должны ставиться либо в Program Files либо в пользовательский профиль в AppData. Настройки же храниться должны исключительно централизованно в пользовательской папке — иначе как можно быстро сделать резервную копию всех настроек пользовательских программ?


«Коллективная глупость — индивидуальный признак толпы» © SLOR, 28 апреля 2011 г.
«Где пьёт толпа, все родники отравлены» © Фридрих Ницше.
Requiescat in pace, SLOR! © Уход Hedge 24 мая 2011 г.

Вне форума

#3 03-07-10 23:18:33

IvanOFF
Участник
Здесь с 26-12-09
Сообщений: 1,653

Re: Где приложения должны хранить свои настройки?

Luca пишет:

Я так смотрю - будущее за Portable приложениями, которые умеют работать без установки.

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

Например 1Сv77 хранит настройки в HKEY_CURRENT_USER, 1Сv8 в AppData профиля. Разрабатывая сервисную утилиту для 1С я четко знаю где искать настройки и могу использовать относительные пути через %USERPROFILE% и %APPDATA% или через обращение к реестру. Если бы программа хранила настройки в своей папке, где мне ее искать?


"Оно, конечно, можно научить медведя ездить на велосипеде. Да только будет ли медведю от этого польза и удовольствие?" (с) А. и Б. Стругацкие

Вне форума

#4 03-07-10 23:26:35

AleksK
Участник
Здесь с 06-10-09
Сообщений: 725

Re: Где приложения должны хранить свои настройки?

IvanOFF пишет:

Например 1Сv77 хранит настройки в HKEY_CURRENT_USER, 1Сv8 в AppData профиля. Разрабатывая сервисную утилиту для 1С я четко знаю где искать настройки и могу использовать относительные пути через %USERPROFILE% и %APPDATA% или через обращение к реестру. Если бы программа хранила настройки в своей папке, где мне ее искать?

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

Вне форума

#5 03-07-10 23:58:47

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

IvanOFF:
Это надуманный повод. Вы все равно читаете документацию, чтобы знать где именно хранятся ключи, как они называются и что делают. И нет особой разницы, прочитать ли их их реестра, или прочитать в реестре папку установки и оттуда взять .ini файл

Вне форума

#6 04-07-10 00:41:52

IvanOFF
Участник
Здесь с 26-12-09
Сообщений: 1,653

Re: Где приложения должны хранить свои настройки?

AleksK пишет:

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

В 8.1 ситуация та же самая, а пользовательские настройки хранились в базе всегда, в "семерке" в папках пользователя внутри ИБ. Я имел в виду именно списки баз и некоторую сервисную инфу.

Mike22 пишет:

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

Если софт полностью портейбл и хранит настройки в своей папке то как мне ее найти? Найдя папку установки я могу считать инфу из файла конфигурации, но как быть если софт многопользовательский и у каждого пользователя могут быть свои настройки? Логичнее их держать в профиле и обращаться по относительному пути. Пример с той же 1С, сервер терминалов, туева хуча пользователей у каждого свой список баз. Моя сервисная программа запущенная из под конкретного пользователя читает значения из профиля и получает список баз именно этого пользователя. Как это искать если в реестре только путь к папке установки и там каким то образом лежат файлы конфигураций?


"Оно, конечно, можно научить медведя ездить на велосипеде. Да только будет ли медведю от этого польза и удовольствие?" (с) А. и Б. Стругацкие

Вне форума

#7 04-07-10 00:53:58

AleksK
Участник
Здесь с 06-10-09
Сообщений: 725

Re: Где приложения должны хранить свои настройки?

IvanOFF пишет:

В 8.1 ситуация та же самая, а пользовательские настройки хранились в базе всегда, в "семерке" в папках пользователя внутри ИБ. Я имел в виду именно списки баз и некоторую сервисную инфу.

Настройки отчетов все конфы под 8.1 хранили в локальном кэше, конфы под 8.2 теперь хранят их в регистрах сведений, это более точная формулировка.

Вне форума

#8 04-07-10 00:55:48

IvanOFF
Участник
Здесь с 26-12-09
Сообщений: 1,653

Re: Где приложения должны хранить свои настройки?

AleksK пишет:

Настройки отчетов все конфы под 8.1 хранили в локальном кэше, конфы под 8.2 теперь хранят их в регистрах сведений, это более точная формулировка.

Это да, ставим 1С плюсик.


"Оно, конечно, можно научить медведя ездить на велосипеде. Да только будет ли медведю от этого польза и удовольствие?" (с) А. и Б. Стругацкие

Вне форума

#9 04-07-10 04:57:19

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

IvanOFF:

Например в Qip все пользовательские настройки лежат в директории Profiles/(uin)/....
И его очень удобно переносить - просто скопировав папку Qip целиком.
В WoW - тоже самое, все настройки лежат в WTF/Account/
SecureCRT спрашивает директорию для сохранения, по умолчанию предлагая-таки дефолтную директорию в users/user/appdata...

Мне крайне нравятся приложения, которые можно перенести на другую машину простым копированием, без реинсталляции и поиска настроек в реестре или пользовательских директориях. Это намного удобнее.

Отредактировано Mike22 (04-07-10 04:59:39)

Вне форума

#10 04-07-10 06:52:27

Anykey
Участник
Здесь с 10-06-10
Сообщений: 66

Re: Где приложения должны хранить свои настройки?

Настройки пользователя  - в его директории.
Настройки приложения - в его директории.
Настройки, влияющие на другие приложения (например связь с типами файлов) - в реестре, в предназначенном для этого разделе, а не где попало.

Можно посмотреть хотя бы на AIMP.

Вне форума

#11 04-07-10 12:58:47

Svart Testare
Великий Человек
Откуда: Вселенной
Здесь с 05-10-09
Сообщений: 5,481
Сайт

Re: Где приложения должны хранить свои настройки?

Не забывайте про файловую и реестровую виртуализацию — это как раз Microsoft применили в Vista/7, чтобы приложения, не рассчитанные на хранение настроек в пользовательском профиле, не засирали Program Files своими настройками.


«Коллективная глупость — индивидуальный признак толпы» © SLOR, 28 апреля 2011 г.
«Где пьёт толпа, все родники отравлены» © Фридрих Ницше.
Requiescat in pace, SLOR! © Уход Hedge 24 мая 2011 г.

Вне форума

#12 04-07-10 13:28:27

Doppelganger
Участник
Здесь с 04-07-10
Сообщений: 579

Re: Где приложения должны хранить свои настройки?

Luca пишет:

Может стоит сделать все приложения портативными и хранить все настройки в их папках?

Не для того в них доступ ограничивали, чтобы туда настройки писались. Котлеты отдельно - мухи отдельно. К тому же при удалении папки из AppData это отразится только на 1 пользователе. Да и попробуй порой догадайся где программа в своей папке конфиг нужный запрятала.

Mike22 пишет:

Например в Qip все пользовательские настройки лежат в директории Profiles/(uin)/....
И его очень удобно переносить - просто скопировав папку Qip целиком.
В WoW - тоже самое, все настройки лежат в WTF/Account/

Qip и WoW создавались под XP, когда Microsoft не сильно гоняла разработчиков. Ну и с WoW всё понятно - ему по-любому требуется полный доступ к своей папке - апдейты качать.


Ну так головой надо думать. По всякой мелочи чо бы не запустить скрипт? Но вот когда полные мудаки всё предлагают скриптами заебенеть, вот тогда полый пиздец начинается. © selenscy

Вне форума

#13 04-07-10 18:13:51

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

Doppelganger:

И как же связаны апдейты с пользовательскими профилями? Правильный ответ - никак не связаны. Просто, Близзард заботися о своих пользователях и все ее игры можно переносить простым копированем, без переустановки и поиска сохранений/профайлов по всему жесткому диску.

Вообще, вопрос постравлен странно. Нужно делать не так, как удобнее каким-то сферическим программистам в ваккууме, и не так как правильно по Великой Космической Идее, а так, как удобно пользователям. А пользователям удобно и понятно, когда куски приложения не разбросаны по трем разным местам, имхо.

Вне форума

#14 04-07-10 19:02:09

Doppelganger
Участник
Здесь с 04-07-10
Сообщений: 579

Re: Где приложения должны хранить свои настройки?

Mike22 пишет:

И как же связаны апдейты с пользовательскими профилями

Связан довольно просто. В онлайн играх довольно частые обновления (вспоминается RO, у которого каждый день могут выходить патчи) - поэтому приходится либо иметь полный доступ к своей папке в Program Files или системная служба (Steam как характерный пример)

Mike22 пишет:

не так как правильно по Великой Космической Идее, а так, как удобно пользователям

А так уже пробовали - полная фигня получается ©. Пользователю порой удобно - переустановил программу, а настройки остались. К тому же бекапы проще делать (вспоминается уже упомянутый Steam, построенный по вашему принципу, хотя там щас сейвы на серваке можно держать стало).


Ну так головой надо думать. По всякой мелочи чо бы не запустить скрипт? Но вот когда полные мудаки всё предлагают скриптами заебенеть, вот тогда полый пиздец начинается. © selenscy

Вне форума

#15 04-07-10 19:05:37

Doppelganger
Участник
Здесь с 04-07-10
Сообщений: 579

Re: Где приложения должны хранить свои настройки?

Mike22 пишет:

Близзард заботися о своих пользователях

Кстати меня давно мучает вопрос: как под ограниченной учёткой все программы требуют прав админа на запись в PF (ибо если не получают то пишут в VirtualStore), а Warcraft 3 нет.


Ну так головой надо думать. По всякой мелочи чо бы не запустить скрипт? Но вот когда полные мудаки всё предлагают скриптами заебенеть, вот тогда полый пиздец начинается. © selenscy

Вне форума

#16 04-07-10 19:33:53

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

Doppelganger:

> А так уже пробовали - полная фигня получается

А по мне, так полная фигня, когда сейв от игрушки лежит где-то в users/user/appdata/someshit/somemoreshit/saves/01.dat, я полчаса искал сейв в Hellgate:London, к примеру.

> хотя там щас сейвы на серваке можно держать стало

На мой взгляд это - идеальный вариант.

> как под ограниченной учёткой все программы требуют прав админа на запись в PF

Так же как и все трастед паблишерс, наверное. Апдейтер Adobe тоже пишет в PF не задавая вопросов даже под ограниченной учеткой.

Отредактировано Mike22 (04-07-10 19:34:22)

Вне форума

#17 04-07-10 19:55:51

Doppelganger
Участник
Здесь с 04-07-10
Сообщений: 579

Re: Где приложения должны хранить свои настройки?

Mike22 пишет:

я полчаса искал сейв в Hellgate:London

А не офтопа ради, хочу у вас спросить а что вы с ним делать-то собрались? Ручками править или другу отдать?

Mike22 пишет:

На мой взгляд это - идеальный вариант.

На мой - тоже, но так умеют далеко не все.

Mike22 пишет:

Так же как и все трастед паблишерс, наверное

Возможно. хотя тот же Steam (и чего это я его вспоминаю всё  sad ) держит ради этого целую службу в системе.


Ну так головой надо думать. По всякой мелочи чо бы не запустить скрипт? Но вот когда полные мудаки всё предлагают скриптами заебенеть, вот тогда полый пиздец начинается. © selenscy

Вне форума

#18 04-07-10 20:00:39

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

Doppelganger:

> а что вы с ним делать-то собрались

У меня два компьютера - ноут и стационарный, собираясь в длительную поездку хотел перенести сейв на ноут.

> хотя тот же Steam (и чего это я его вспоминаю всё

Наверное потому, что Steam это отличная идея в ужасной, глючной и тормозной оболочке :-(

Отредактировано Mike22 (04-07-10 20:03:38)

Вне форума

#19 04-07-10 21:13:13

Svart Testare
Великий Человек
Откуда: Вселенной
Здесь с 05-10-09
Сообщений: 5,481
Сайт

Re: Где приложения должны хранить свои настройки?

Mike22 пишет:

Апдейтер Adobe тоже пишет в PF не задавая вопросов даже под ограниченной учеткой.

Еще как спрашивает! Иначе летел бы с моего компа как сраный веник со своими обновлениями Acrobat-а и флеша smile


«Коллективная глупость — индивидуальный признак толпы» © SLOR, 28 апреля 2011 г.
«Где пьёт толпа, все родники отравлены» © Фридрих Ницше.
Requiescat in pace, SLOR! © Уход Hedge 24 мая 2011 г.

Вне форума

#20 04-07-10 21:28:31

Бродяга
Весёлый тролль
Здесь с 08-10-09
Сообщений: 911

Re: Где приложения должны хранить свои настройки?

Svart Testare пишет:

Еще как спрашивает! Иначе летел бы с моего компа как сраный веник со своими обновлениями Acrobat-а и флеша

Вообще-то, иначе это был бы косяк UAC. Грандиозный, я бы сказал, косяк  smile


Ну на мой взгляд засорение происходит от установки/удаления програм, использования програм, и просто самих ошибок в по.На опере когдато(не понмю точно) был глюк когда она с каждым днём жрала памятивсё больше.здесь принцип очень похож.используя какой либо софт в виндовсе он портится.у меня реально рекорд 1.5 года на ХР без переустановки. © OpenMind

Вне форума

#21 05-07-10 05:36:24

Mike22
Участник
Здесь с 03-10-09
Сообщений: 1,032

Re: Где приложения должны хранить свои настройки?

> Еще как спрашивает!

Спрашивает сам Adobe Updater, а не UAC.

Вне форума

#22 05-07-10 09:34:17

IvanOFF
Участник
Здесь с 26-12-09
Сообщений: 1,653

Re: Где приложения должны хранить свои настройки?

Спрашивает и тот и другой, если UAC по умолчанию, если передвинуть на одно деление вниз спрашивать будет только Adobe Updater.


"Оно, конечно, можно научить медведя ездить на велосипеде. Да только будет ли медведю от этого польза и удовольствие?" (с) А. и Б. Стругацкие

Вне форума

#23 05-07-10 10:51:38

Svart Testare
Великий Человек
Откуда: Вселенной
Здесь с 05-10-09
Сообщений: 5,481
Сайт

Re: Где приложения должны хранить свои настройки?

Mike22 пишет:

Спрашивает сам Adobe Updater, а не UAC.

Под стандартным пользователем UAC спрашивает всегда, при любой инсталляции любых программ.


«Коллективная глупость — индивидуальный признак толпы» © SLOR, 28 апреля 2011 г.
«Где пьёт толпа, все родники отравлены» © Фридрих Ницше.
Requiescat in pace, SLOR! © Уход Hedge 24 мая 2011 г.

Вне форума

Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] ClaudeBot

Подвал форума

Под управлением FluxBB
Модифицировал Visman

[ Сгенерировано за 0.010 сек, 7 запросов выполнено - Использовано памяти: 1.76 Мбайт (Пик: 1.84 Мбайт) ]