Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Теория - Где создавать ini - в директории с главной программой или в %appdata%?

Закрытая тема
Настройки темы
Теория - Где создавать ini - в директории с главной программой или в %appdata%?

Аватара для bk99

Пользователь


Сообщения: 53
Благодарности: 1

Профиль | Отправить PM | Цитировать


Вопрос к практикующим "писателям".
Сразу оговорюсь, что программ я не пишу, языками не владею, стандартов не знаю.
Итак, преамбула.
Есть одна Программа (типа текстовый редактор с фенечками), один ехе-шник, настройки хранятся в реестре. Автор Программы решил вынести настройки из реестра в ini, но поместил его (этот ини) сюда:
C:\Documents and Settings\[user]\Application Data\Программа
Мне же кажется, что ини-шник должен лежать в директории с главной программой. Но автор упёрся на своём, и переубедить его я не могу. Посоветуйте, пожалуйста, какие доводы я бы мог привести в свою пользу? Или я всё-таки не прав?
Спасибо.
зы Прошу прощения, если это офтоп...

Отправлено: 13:11, 20-12-2011

 

Вредитель


Сообщения: 460
Благодарности: 126

Профиль | Отправить PM | Цитировать


bk99, правильно автор решил. В Win Vista/7 для записи в ProgramFiles, куда обычно устанавливаются программы, нужны привилегии.

-------
Все сказаное является только моим личным мнением.


Отправлено: 13:28, 20-12-2011 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для bk99

Пользователь


Сообщения: 53
Благодарности: 1

Профиль | Отправить PM | Цитировать


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

Отправлено: 13:45, 20-12-2011 | #3


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Цитата bk99:
Программа портабельна, поставляется как один зазипованный ехе-шник (сори, что сразу про это не упомянул »
Так в этом и есть всё доказательство, что раз портабельная, то должна хранить настройки не зависимо от конфигурации компьютера, т.е. свободно переноситься на флешке. Значит .ini должен лежать возле программы, а на хз где. В этом и есть смысл портабельности и настроек в том числе.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 22:17, 20-12-2011 | #4


Аватара для bk99

Пользователь


Сообщения: 53
Благодарности: 1

Профиль | Отправить PM | Цитировать


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

Отправлено: 08:38, 21-12-2011 | #5


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


bk99, уговорите его в настройках программы указать на выбор место сохранение ini-файла или в AppData или в месте с программой, лояльность к пользователям приветствуется всегда. Кому нужно пусть сохраняют в папку с прогой, путь, к ини, пусть хранится также в самом ини. А по умолчанию, пусть создаётся в AppData.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 23:23, 21-12-2011 | #6


Аватара для bk99

Пользователь


Сообщения: 53
Благодарности: 1

Профиль | Отправить PM | Цитировать


Drongo, да, так и сделал, жду что скажет...
Спасибо.

Отправлено: 08:00, 22-12-2011 | #7


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Drongo, bk99, скажет о вас много нелицеприятного - "путь, к ини, пусть хранится также в самом ини" - это гениально, и как его найти?!

Просто проверять наличие рядом с exe-файлом ini-файла, если есть - использовать только его, если нет - искать/создавать в %appdata%.
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:34, 27-12-2011 | #8


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Цитата Busla:
"путь, к ини, пусть хранится также в самом ини" - это гениально, и как его найти?! »
С этим я перемудрил, тут каюсь.
Цитата Busla:
Просто проверять наличие рядом с exe-файлом ini-файла, если есть - использовать только его, если нет - искать/создавать в %appdata%. »
Он же прогер, это и имелось ввиду, не разжёвывать же мысль.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 12:54, 27-12-2011 | #9


ИО Капитана Очевидности


Contributor


Сообщения: 5387
Благодарности: 1105

Профиль | Отправить PM | Цитировать


Цитата bk99:
Есть одна Программа (типа текстовый редактор с фенечками), один ехе-шник, настройки хранятся в реестре. Автор Программы решил вынести настройки из реестра в ini, но поместил его (этот ини) сюда:
C:\Documents and Settings\[user]\Application Data\Программа »
Скажу как программист и системный администратор.
Есть такой социальный подвид "Programmist 98" - это человек, который пишет программы так, будто бы все вокруг до сих пор работают в операционной системе Windows 98, которая никак не контролирует и не ограничивает действия программы.

"Programmist 98" никак не задумывается о том, что такие места, как корень диска C:, каталоги Windows и Program files, раздел Local Machine реестра в нормально настроенной системе доступны на запись только программам, запущенным от имени пользователей с полномочиями администратора.
Посему системному администратору, столкнувшемуся с необходимостью использования таких "продуктов", приходится выслеживать, какие же объекты эта ... программа пытается открыть на запись, и указывать эти разрешения в индивидуальном порядке.
К счастью, этот социальный подвид постепенно вытесняется нормальными программистами, которые предусматривают хранение настроек программ и прочих изменяемых объектов в профиле пользователя.

Цитата bk99:
Ну, "портабельная" - это я так сказал, автор эту Программу не позиционирует как "портабельную". Программа - это один ехе-шник, который может запускаться из любого места (хоть с флешки), а ини файл пишется в АпДата. »
Да, если программа в своей работе не требует инсталляции, её можно считать "портабельной".
Однако тогда для запуска не с флэшки её придётся устанавливать вручную, что не очень удобно.

Что могу посоветовать, как программист и сисадмин?
1. Использовать инсталлятор: это позволит не только создать ярлыки на рабочем столе, но и ассоциировать её с нужными файлами (то есть открывать ею файлы по двойному щелчку)
2. Сделать проверку наличия INI-файла в каталоге с программой:
- если файл рядом с программой есть и открывается для записи, значит программа используется в переносной редакции
- если файл отсутствует, значит программа используется в установленной редакции, и нужно хранить параметры в профиле

-------
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)

Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.

Это сообщение посчитали полезным следующие участники:

Отправлено: 03:00, 29-12-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Теория - Где создавать ini - в директории с главной программой или в %appdata%?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - После переустановки винды,папки главной директории стали другие? andrusha0 Microsoft Windows 2000/XP 1 30-05-2011 07:29
2008 - [решено] Где а какую группу лучше создавать! Yohan777 Windows Server 2008/2008 R2 5 28-06-2010 12:28
Разное - [решено] нужно ли создавать диск восстановления или достаточно установочного диска? forkatt Microsoft Windows 7 1 11-11-2009 10:05
[решено] Посоветуйте какой программой создавать SFX архивы rushen Хочу все знать 9 10-05-2009 14:45
Разное - Где в Visual Studio 2008 создавать EXEшник из Приложения Windows Forms? Большой Кол Программирование и базы данных 4 09-03-2009 03:38




 
Переход