Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сохранение конфигурации ini или не ini? 
V
    Опции темы
Teleport
Дата 27.7.2008, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 3
Всего: 6



Разобрался с ini файлами. Можно сохранять конфигурации программ. Но вот слышал, что можно не только ini использовать. Типа получше что-то есть, а ini уже устарела и не будет поддерживаться в Windows.
 Какие советы будут? Например, нужно сохранить положения кнопок на форме, цвета Label, размеры Memo. Кроме ini, что можно еще использовать?



--------------------
user posted image
user posted image 
PM MAIL   Вверх
Данкинг
Дата 27.7.2008, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 9
Всего: 130



Реестр. Кстати, один из пунктов для успешной сертификации программы Microsoft'ом - если эта программа сохраняет свои параметры в реестре.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Riply
Дата 27.7.2008, 19:03 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Комодератор
Сообщений: 572
Регистрация: 27.3.2007
Где: St. Petersburg

Репутация: 3
Всего: 32



Цитата(Teleport @  27.7.2008,  18:50 Найти цитируемый пост)
Кроме ini, что можно еще использовать


Зависит от размера данных.
Небольшой, IMHO, лучше(удобнее) в реестре, иначе в IniFile`е.

Выбор также может зависеть от требований к программе,
но основной критерий - религиозные убеждения автора smile 

PM MAIL   Вверх
Qu1nt
Дата 27.7.2008, 19:49 (ссылка) |   (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 13.1.2007

Репутация: 18
Всего: 50



Последнее время стало модно использовать xml)
PM MAIL   Вверх
ZBugz
  Дата 28.7.2008, 08:15 (ссылка)  | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 631
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата(Teleport @ 27.7.2008,  18:50)
а ini уже устарела и не будет поддерживаться в Windows.

А причем тут Windows и ini ?

INI надежна тем, что если сохранять параметры программы в ее же папку, то обычно не бывает проблем с доступом. А если в реестр сохранять и не будет прав доступа, то плакали твои настройки.

INI - форева  smile 
PM MAIL   Вверх
Akella
Дата 28.7.2008, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
если сохранять параметры программы в ее же папку, то обычно не бывает проблем с доступом.

Ты не прав, в Висте есть проблемы, если программа устанавливается в папку program files на системном диске. Видать эта папка контролируется правами (контроль прав пользователей). Виста просто не даёт создавать у себя в папке файлы, пока не отключишь контроль прав. Кстати (по непроверенным данным) в последнем релизе висты контроль прав отключен по умолчанию.
PM MAIL   Вверх
Poseidon
Дата 28.7.2008, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
А причем тут Windows и ini ?
А при том, что нужно читать документацию!!! 
Цитата
В Windows 95 и NT использование файлов .INI не поощряется и вместо типа TIniFile, инкапсулирующего свойства этих файлов, используются типы TRegistry,  TRegIniFile и TRegistryIniFile, инкапсулирующие свойства системного реестра registry.


Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
если в реестр сохранять и не будет прав доступа, то плакали твои настройки.
Доступ на чтение из реестра есть даже у гостя. Доступ в ветку HKEY_CURRENT_USER\Software (а именно туда рекомендуется сохранять настройки) есть у всех пользователей системы. А сохранять все в папку программы не совсем хороший тон, т.к. у разных пользователей могут быть разные настройки.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
ZBugz
Дата 28.7.2008, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 631
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата(Akella @ 28.7.2008,  08:39)
Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
если сохранять параметры программы в ее же папку, то обычно не бывает проблем с доступом.

Ты не прав, в Висте есть проблемы, если программа устанавливается в папку program files на системном диске. Видать эта папка контролируется правами (контроль прав пользователей). Виста просто не даёт создавать у себя в папке файлы, пока не отключишь контроль прав. Кстати (по непроверенным данным) в последнем релизе висты контроль прав отключен по умолчанию.

 smile 
У меня виста, есть прога, пишет INI к себе, вооще без проблем, даже с полностью включенными настройками в windows.

Добавлено @ 09:48
Цитата(Poseidon @ 28.7.2008,  08:41)
Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
А причем тут Windows и ini ?
А при том, что нужно читать документацию!!! 
Цитата
В Windows 95 и NT использование файлов .INI не поощряется и вместо типа TIniFile, инкапсулирующего свойства этих файлов, используются типы TRegistry,  TRegIniFile и TRegistryIniFile, инкапсулирующие свойства системного реестра registry.


Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
если в реестр сохранять и не будет прав доступа, то плакали твои настройки.
Доступ на чтение из реестра есть даже у гостя. Доступ в ветку HKEY_CURRENT_USER\Software (а именно туда рекомендуется сохранять настройки) есть у всех пользователей системы. А сохранять все в папку программы не совсем хороший тон, т.к. у разных пользователей могут быть разные настройки.

Первое вообще не понятно, с какого перепуга ? Я даже на чистом 95 тестировал свои программы, без osr2, все пашет отлично.
Второе, на чтение то есть, а записывать чем будешь, если доступ админ закроет ? Это точень часто.
А если много пользователей, то там же в папке создаешь профайлы, очень многие и очень хорошие программы так делают, и удалаять настройки легко, если что нибудь пользователь напортачил, да и вообще при деинсталяции удалять проще smile 

Это сообщение отредактировал(а) ZBugz - 28.7.2008, 09:50
PM MAIL   Вверх
Teleport
Дата 28.7.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 3
Всего: 6



Нну то что в qip ini используется  вроде пашет без проблем...(Config.ini - там такой файлик видел)
Qu1nt насчет xml - подробнее можно?  smile 


--------------------
user posted image
user posted image 
PM MAIL   Вверх
Poseidon
Дата 28.7.2008, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
Первое вообще не понятно, с какого перепуга ?
Это ты не по адресу вопрос задал. У Майкрософта спроси, чего он не рекомендуют. Если работает, то это еще на значит что все правильно, а значит что оставили для обратной совместимости. Но кто может утверждать, что в Vienna не откажутся от ini?

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
а записывать чем будешь, если доступ админ закроет ?
Доступ в HKEY_CURRENT_USER\Software?  smile Сам-то понял?

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
очень многие и очень хорошие программы так делают
Хорошие? Может с точки зрения пользователя они и хорошие, а вот если посмотреть на них глазами программиста...

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
У меня виста, есть прога, пишет INI к себе, вооще без проблем, даже с полностью включенными настройками в windows.
Бред! Тот же Тотал не хочет сохранять настройки в свой же Wincmd.ini Ругается что нет прав. Вот если отключить контроль (так называемый UAC) или разрешить изменение этого файла, то тогда без проблем.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Teleport
Дата 28.7.2008, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 3
Всего: 6



про xml расскажите  smile

Добавлено через 13 секунд
 smile  smile 


--------------------
user posted image
user posted image 
PM MAIL   Вверх
Poseidon
Дата 28.7.2008, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Teleport @  28.7.2008,  12:04 Найти цитируемый пост)
про xml расскажите
В DRKB есть целый раздел про xml.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Teleport
Дата 28.7.2008, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 3
Всего: 6



Poseidon понял, спасиб)))


--------------------
user posted image
user posted image 
PM MAIL   Вверх
ZBugz
  Дата 28.7.2008, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 631
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата

Это ты не по адресу вопрос задал. У Майкрософта спроси, чего он не рекомендуют. Если работает, то это еще на значит что все правильно, а значит что оставили для обратной совместимости. Но кто может утверждать, что в Vienna не откажутся от ini?

Ниче не будет. Это просто пропаганда реестра с 95 виды.
Цитата

Доступ в HKEY_CURRENT_USER\Software?  smile Сам-то понял?

Все закрывается, вчем проблема ?
Цитата

Хорошие? Может с точки зрения пользователя они и хорошие, а вот если посмотреть на них глазами программиста...

Хрен один, если туда залезут, то и туда смогут.
Цитата
Бред! Тот же Тотал не хочет сохранять настройки в свой же Wincmd.ini Ругается что нет прав. Вот если отключить контроль (так называемый UAC) или разрешить изменение этого файла, то тогда без проблем.

А у меня работает  smile Я как раз эти моменты тестировал smile 

В итоге помимо реестра, можно сохранить ini в профайл пользователя или накрайняк, если правда это временный файл, то temp.
PM MAIL   Вверх
CodeMonkey
Дата 28.7.2008, 14:37 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 38
Всего: 89



Цитата(Teleport @  27.7.2008,  18:50 Найти цитируемый пост)
Например, нужно сохранить положения кнопок на форме, цвета Label, размеры Memo.

Рекомендую использовать JVCL, конкретно - компоненты TJvAppRegistryStorage + TJvFormStorage. Позволяют не писать кода вообще. Можно просто кинуть на форму, настроить где хранить настройки и указать (мышкой), какие свойства каких компонентов на форме сохранять. Всё.

Цитата(Teleport @  27.7.2008,  18:50 Найти цитируемый пост)
а ini уже устарела и не будет поддерживаться в Windows

Да, ini файлы действительно считаются устаревшим способом хранения настроек ещё с Windows 95. Но нужно понимать, что ini-файл - это обычный текстовый файл, и ничто вам не мешать создавать, читать и изменять текстовые файлы. 

Цитата(Riply @  27.7.2008,  19:03 Найти цитируемый пост)
Зависит от размера данных. Небольшой, IMHO, лучше(удобнее) в реестре, иначе в IniFile`е.

Большой объём данных лучше вообще в отдельном файле хранить, ибо это - уже не настройки.

Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
INI надежна тем, что если сохранять параметры программы в ее же папку, то обычно не бывает проблем с доступом.

Неверно. Если программа располагается в Program Files, то использование ini-файлов в папке с программой невозможно из под любых пользователей, кроме администраторов. Кроме того, такой подход создаёт проблемы с несколькими пользователями. Правильное место для размещение ini-файлов - папка Application Data.

Цитата(ZBugz @  28.7.2008,  08:15 Найти цитируемый пост)
А если в реестр сохранять и не будет прав доступа, то плакали твои настройки.

Если идёт сохранение в правильное место реестра (HKCU/Software), то права - есть.

Цитата(Akella @  28.7.2008,  08:39 Найти цитируемый пост)
Кстати (по непроверенным данным) в последнем релизе висты контроль прав отключен по умолчанию.

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

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
У меня виста, есть прога, пишет INI к себе

Куда к себе? В какой-нибудь левый D:\Soft\App? 

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
даже с полностью включенными настройками в windows.

Это ещё как?

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
Второе, на чтение то есть, а записывать чем будешь, если доступ админ закроет ? Это точень часто.

Такому администратору нужно руки оторвать. Это всё равно что на папку Temp deny all для всех поставить.
А вот запретить запись в папку с программой - это правильное дествие. И это +1 причина, почему ini-файлы в папке с программой - плохое решение.

Цитата(ZBugz @  28.7.2008,  09:46 Найти цитируемый пост)
А если много пользователей, то там же в папке создаешь профайлы, очень многие и очень хорошие программы так делают, и удалаять настройки легко, если что нибудь пользователь напортачил, да и вообще при деинсталяции удалять проще  

Уже было сказано, почему это плохо: многочисленные проблемы с правами на файлы.

Цитата(ZBugz @  28.7.2008,  13:16 Найти цитируемый пост)
Это просто пропаганда реестра с 95 виды.

Знаете, не просто так эту "пропаганду" развернули. ОС подразумевает определённую идеологию. Любые вещи в ней можно делать "правильно" и "неправильно". Так вот, в Windows использование ini - неправильно. Вам говорят как надо делать, чтобы писать качественные приложения в Windows. А вы говорите - типа, я самый умный, буду делать как хочу. А потом после выхода новой ОС имеете кучу проблем и вините во всём MS: ах, они черти, лишь бы мне жизнь усложнять.
Не считая случая ярых идеологов ini-файлов, их использование может быть оправдано в случаях, когда реестр использовать нельзя - например, "мобильные" приложения на флешке. Во всех прочих случаях реестр (обычно) является предпочтительным местом хранения настроек. 

Цитата(ZBugz @  28.7.2008,  13:16 Найти цитируемый пост)
А у меня работает   Я как раз эти моменты тестировал  

Либо вы не всё нам говорите, либо вы администратор, либо вы угробили настройки системы по-умолчанию. Аплодисменты.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1847 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.