поганый реестр

 
1 2 3 4 5 6 7 8
+
-
edit
 

Mishka

модератор
★★☆
Zeus>Во-1, большинство настроек (по количеству) все-таки числовые и логические. Во-2, бинарный файл при прочих равных меньше. В несколько раз. В-3, парситься он будет явно быстрее - и числа уже в родном формате, и теги/идентификаторы/блоки - одинаковой длины... Насчет перебора - так большинству утилитарных прог (да, тех самых приблуд :) - ибо о программах

Давайте я попробую сформулировать своими словами вашу позицию, а Вы меня поправите. Мне кажеться, что ваша позиция отражает Женину, но только более членораздельно, если можно так выразиться.

1. Все признают, что настройки нужны.
2. Настройки надо хранить отдельно от кода и данных.
3. Начально можно их задавать каким-либо образом - хардкодировано, в дистрибуте, тд.
4. Народ возмущен тем, что все настройки надо хранить в одном месте (почему - отдельная тема и ее я предлагаю обсудить отдельно).

Теперь по Вашей позиции.
1. Пользователь не должен лазить по настройкам - это дело автора программы и самой программы.
2. Бинарная форма предпочтительней текстовой, тк и кодирование есть кое-какое, и быстрее в чтении записи, и компактнее.
3. Храниться должно в файле возле программ.

Я хочу спросить - а почему файлы должны храниться в поддиректории программы? Почему нельзя завести специальные поддиректории находящиеся в известном каталоге? В чем вы видите разницу? При таком подходе, весь код можно поместить в файловую систему и присоединить ее в режиме только-для-чтения. Защищенность будет максимально повыщена. А деление на поддиректории позволит устанавливать и списки доступа. Аля Юних. Теперь, если вопросов не возникает и все согласны, то предлагается рассмотреть вопрос о файловой системе. ФС есть часть ОС, хотя и весьма независимая. Т.е. мы видим, что хранение информации средствами ФС и в самой ФС воспринимается всеми абсолютно нормально. Т.е. никто не говорит о том, что здесь не зависимости от ОС, хотя это и не правда. Более того, все себя чувствуют очень комфортно в собственной директории, хотя это все адресуется от корневого каталого (и даже диски есть своеобразные подкатологи в MyComputer).

Посмотрим на реестр с другой стороны - как на специализированную ФС ориентированную на то, чтобы быстро и эффективно поддерживать работу с файлами типа конфигурации. Есть поддиректории. Есть имена и их значения - с достаточно быстрым доступом. Более того, можно организовывать значения разных типов - от символьных до бинарных. По сути дела это совокупность иерархической СУБД и немного ФС. Способ организации данных - от СУБД, а возможность легко создавать ключи - это от ФС. Каждый ключ контролруется с точки зрения прав доступа.

[ слишком длинный топик - автонарезка ]
 

TEvg

аксакал

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

И еще наблюдение - для программ с непонятными шифрованными конфигами обычно появляются самодельные утилиты, которые совершенно по уродски хачат эти конфиги. Гемморой от этого не уменьшается. Здесь мы попадаем в ситуацию против столь активно выступает Женя - есть файл, а понять, что в нем нельзя - а вдруг сносить просто так нельзя. Кто тут упоминал про plug-in в котором реестр виден как кусок файловой системы. Если бы это было стандартной фичей и один из подкатологов, где установлена программа мог бы быть отображение на участок реестра (а-ля Юних линки или Форточные шорткаты), то думаю не возникло бы проблем у Жени и у других.

Кстати, вот статья про Форточные ини файлы и реестр:


Mapping .INI File Entries to the Registry

oneMscomBlade,oneMsomNav,oneMscomFooter, oneMscomBlade,oneMsomNav,oneMscomFooter, // support.microsoft.com
 


Суть такова, что ини файлы отображаются в реестр в ключ
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsNTCurrentVersionIniFileMapping
Under Microsoft Windows NT, Windows 2000, and Windows XP, .INI file variables are mapped into the Registry as defined in the
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsNTCurrentVersionIniFileMapping
mapping key. The Win32 Profile application programming interface (API) functions look for a mapping by looking up the filename extension portion of the profile file. If a match is found, then the search continues under that node for the specified application name. If a match is found, then the search continues for the variable name. If the variable name is not found, the value of the (NULL) variable name is a string that points to a node in the Registry, whose value keys are the variable names. If a specific mapping is found for the variable name, then its value points to the Registry value that contains the variable value.


И в конце хочу заметить, что я вовсе не фанатик форточек, а наоборот. Но, здравые идеи, на мой взгляд, остаются таковыми независимо от того, кто их высказал. Так и реестр, как идея, ИМХО, заслуживает того, чтобы к ней присмотреться.
 

TEvg

аксакал

админ. бан
>Я хочу спросить - а почему файлы должны храниться в поддиректории программы? Почему нельзя завести специальные поддиректории находящиеся в известном каталоге? В чем вы видите разницу? При таком подходе, весь код можно поместить в файловую систему и присоединить ее в режиме только-для-чтения. Защищенность будет максимально повыщена.

Вообще-то тут есть рациональное зерно.
Мне вообще-то нравится когда прога - одно целое. Например это каталог в котором все и лежит.

Рассмотрим реестр. Чем он плох? Конечно тем что все находится физически в одном файле, что чревато.. Но даже и это не главное. Главное - информация размазана. Одно и тоже приложение пихает ключи куда хочет. Сама система ведет себя еще хуже. Реестр фактически месиво. Сталкивались с ситуацией - прога ругается на реестр - вы ищете ключи и не всегда находите?

Компромисный приемлемый вариант - имеется системный реестр и юзерский. Они разделены на уровне файлов. В системный проги лезть не должны! При смахивании же юзерского ОС сохраняет работоспособность. В юзерском прога не пишет куда попало - ей выделяют папку имя которой должно соответствовать проге. Далее пути должны задаваться не в каких попало, а в жестко заданых ключах. Такой вариант обеспечит желаемую секьюрность, в тоже время позволит избежать умирания ОС и переустановки прог (При переустановке ОС перезаписывается системный реестр, юзерный цепляется старый (спросить при установке!) и вперед). При копировании или переносе приложения проги копирования смогут автоматически экспортировать/импортировать данные из юзерского реестра и править пути в ключах обеспечивая таким образом желаемую прозрачность. Малые же проги юзают обычные файлы конфигурации.

Правда вариант - все в своем каталоге мне милее, но при грамотной реализации вышеописаного варианта с реестрами я бы не ругался.
 

TEvg

аксакал

админ. бан
>Кстати, вот статья про Форточные ини файлы и реестр:
>http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q102889&

microsoft.com у нас на проксе забанен как мусор. ;)
 
+
-
edit
 

Voennich

опытный

>>Фотошоп и Опера прекрасно обходятся без настроек в реестре. >>Это не самые простые программы
>А не сделать ли Вам уважаемый поиск в реестре по Photoshop?

Э.. дарагой! Я же не сказал - не пишут в реестр. Я сказал - прекрасно обходятся без настроек в реестре. Это две большие разницы! Если вы просто копирнете каталог с фотошопом или Оперой на другой комп или смахнете/поставите винду - они будут работать! Сравните это с офисом. Что значит правильный подход в программировании!

О способе "шифрованый бинарник" - это не есть хорошо. Сам бинарник пожалуйста, но желательно тогда и описание формата. А закрывашки - это не выход. Приходилось мне как-то ломать такой умный бинарник с CRC. Ничего, сломал за день. Так что ненужное это дело.
 

TEvg

аксакал

админ. бан
TEvg
так твоя позиция:
- убрать реестр нахер
или же
- пользоваться реестром аккуратно, запретить прямой доступ к нему
?????????


кстати Photoshop после копирования с машины на машину может работать и будет но баги появятся :-)
 
+
-
edit
 

Mishka

модератор
★★☆
Если ставить вопрос ребром или/или - то убрать нахер!

Потому что аккуратно и т.д. - благими пожеланиями вымощена дорога в одно интересное место.
 
+
-
edit
 

Mishka

модератор
★★☆
TEvg>Потому что аккуратно и т.д. - благими пожеланиями вымощена дорога в одно интересное место.

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

Кстати, хотя вы и видете реестр как один физический файл - это не так - Крон уже писал про это.
 

TEvg

аксакал

админ. бан
TEvg>Мне вообще-то нравится когда прога - одно целое. Например это каталог в котором все и лежит.

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

TEvg>Рассмотрим реестр. Чем он плох? Конечно тем что все находится физически в одном файле, что чревато.. Но даже и это

1. Не верно.
2. Упал корневой каталог или фат - чревато.

TEvg>Компромисный приемлемый вариант - имеется системный реестр и юзерский. Они разделены на уровне файлов. В системный

Так и сделано.

TEvg>проги лезть не должны! При смахивании же юзерского ОС

Золотые слова - проги не должны. Т.е. программисты не должны.

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


и в реестре так можно.


TEvg>Правда вариант - все в своем каталоге мне милее, но при

Я понимаю, что это на уровне чуств? Тогда спорить трудно.
 
+
-
edit
 

avmich

координатор

Хм. Общими усилиями пришли к консенсусу. Детали.. ладна не так важно.

Жаль лишь что Билли, наглая морда, этот топик не читает.
 
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
:) приятно послушать мнение специалиста.

Добавлю вот что. Идея, что двоичные данные компактнее, не нова. Но если данные хоть сколько-нибудь не до конца определены, наверняка (по многолетнему опыту развития индустрии) понадобится на эти данные смотреть и с ними работать человеку. Что сразу делает текстовые форматы привлекательными. Настолько, что, несмотря на потерю в несколько раз по плотности, приводит к развитию текстовых форматов - нынче на базе XML, например.

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

Вот тогда им и стоит пользоваться :)
 
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
Zeus>Во-1, большинство настроек (по количеству) все-таки числовые и логические.

А вот по объёму, всё же, больше текстовых данных :)

Zeus>Во-2, бинарный файл при прочих равных меньше. В несколько раз.

Ну-ну. Вот типичный конфиг Форумов - уменьши его в несколько раз переводом в бинарный :)




1|^|Авиационный|^|Обо всём, что касается авиации.|^|On|^|is|^|is|^|all&all|^||^|1|^||^|ON|^|no|^||^|yes|^|000020|^|date
3|^|Для разработчиков|^|Для разработчиков и всех желающих поучаствовать в развитии Авиабазы и этого форума. Замечания, предложения, критика, тесты и прочий мусор :) |^|On|^|is|^|is|^|allreg&allreg|^||^|2|^||^|ON|^|no|^||^|yes|^|000030|^|date
1|^|Космос|^|Космонавтика, ракетная техника, астрономия, космология. Новости, обсуждение, прочее...|^|On|^|is|^|is|^|all&all|^||^|3|^||^|ON|^|no|^||^||^|000040|^|date
1|^|Общевоенный|^|Любые военно-технические темы и всё сопутствующее.|^|On|^|is|^|is|^|all&all|^||^|4|^||^|ON|^|no|^||^|yes|^|000060|^|date
1|^|Игровой|^|Любые компьютерные игры вообще и авиасимуляторы с прочими леталками в частности.|^|On|^|is|^|is|^|all&all|^||^|5|^||^|ON|^|no|^||^||^|000070|^|date
2|^|Новости на русском|^|Авиационные новости на русском языке и их обсуждение.|^|On|^|is|^|is|^|all&all|^||^|6|^||^|ON|^|no|^||^|yes|^|000080|^|date
2|^|English News|^|Aviation news in English and their discussion.|^|On|^|is|^|is|^|all&all|^||^|7|^||^|ON|^|no|^||^|yes|^|000090|^|date
3|^|Политический|^|Всю политику (в худшем смысле этого слова) - СЮДА! :) Разрешается всё, кроме откровенных оскорблений. Для вопросов взаимодействия Человека и Общества есть отдельный форум.|^|On|^|is|^|is|^|allreg&allreg|^||^|8|^||^|ON|^|no|^||^||^|000100|^|date
3|^|Компьютерный|^|Обо всём околокомпьютерном одной кучей. Всё, что не вынесено в спец. подразделы. Языки программирования, администрирование, юмор и проч.|^|On|^|is not|^|is|^|all&all|^||^|9|^||^|ON|^|no|^||^||^|000110|^|date
3|^|Грёзы|^|Грёзы, сидя на пальме, в ожидании, пока она дорастёт до облаков...|^|On|^|is|^|is|^|all&all|^||^|10|^||^|ON|^|no|^||^||^|000120|^|date
3|^|Научный|^|Любые околонаучные обсуждения, выпадающе из тем основных форумов. Физика, химия, математика, биология...|^|On|^|is|^|is|^|all&all|^||^|11|^||^|ON|^|no|^||^|yes|^|000130|^|date
2|^|Космические новости|^|Новости космической тематики на русском и английком языках.|^|On|^|is|^|is|^|all&all|^||^|12|^||^|ON|^|no|^||^||^|000050|^|date
3|^|Психология|^|Обсуждение вопросов психологического характера. Анализ и самоанализ. Сновидения и фантазии. Человеческие отношения. Юнг, Гроф, Перлз...|^|On|^|is|^|is|^|all&all|^||^|13|^||^|ON|^|no|^||^||^|000140|^|date
1|^|Комментарии к страницам|^|Форум служит ИСКЛЮЧИТЕЛЬНО для комментариев и обсуждений конкретных страниц Авиабазы. Топики и ответы "не в тему" безжалостно стираются.|^|On|^|is|^|is|^|all&all|^|||14|^||^|ON|^|no|^||^||^|000150|^|date
1|^|Главный|^|Главный форум Авиабазы. Новости, анонсы, административная информация. Обязателен к регулярному посещению!|^|On|^|is|^|is|^|all&all|^||^|15|^||^|ON|^|no|^||^||^|000010|^|date
3|^|Радости жизни|^|Кулинарный, выпивка, прочие хорошие вещи и дела. Музыка, книги, фильмы, события. Всё, что не вписывается в другие тематики, но позволяет украсить нашу жизнь.|^|On|^|is|^|is|^|all&all|^||^|16|^||^|ON|^|no|^||^||^|000160|^|date
1|^|English forum|^|Any discussion in English.|^|On|^|is|^|is|^|all&all|^||^|17|^||^|ON|^|no|^||^||^|000155|^|date
3|^|Закрытый|^|Закрытый форум для служебного пользования.|^|On|^|is not|^|is|^|private|^|Y2NGA7|^|18|^||^|ON|^|no|^|macrohard|^||^|000180|^|date
3|^|Amazon|^|Форум гильдии Амазонки шарда Оском|^|On|^|is|^|is|^|all&all|^||^|19|^||^|ON|^|no|^||^||^|000190|^|date
|^|Анти-ПК|^||^|On|^|is|^|is|^|all&all|^||^|20|^||^|ON|^|no|^||^||^|000200|^|date
1|^|Работа|^|Вакансии аэрокосмических фирм и резюме специалистов.|^|On|^|is|^|is|^|all&all|^||^|21|^||^|ON|^|no|^||^||^|000065|^|date
1|^|Ракетомодельный|^|Cамодельные ракетные двигатели и ракеты любых типов и размеров|^|On|^|is|^|is|^|all&all|^||^|22|^||^|ON|^|no|^||^||^|000067|^|date
1|^|ПВО|^|Противовоздушная и противоракетная оборона.|^|On|^|is|^|is|^|all&all|^||^|23|^||^|ON|^|no|^||^||^|000035|^|date
1|^|Морской|^|Обо всём, что плавает, ныряет или служит для их уничтожения...|^|On|^|is|^|is|^|all&all|^||^|24|^||^|ON|^|no|^||^||^|000024|^|date
1|^|Исторический|^|В первую очередь - военная история. В частности - история Второй Мировой. Вечный спор о тврениях Суворова/Резуна. Также теория Фоменко, пассионарность Гумилёва и т.д. и т.п.|^|On|^|is|^|is|^|all&all|^||^|25|^||^|ON|^|no|^||^||^|000062|^|date
3|^|Человек и общество|^|Вопросы социологического плана, и вообще взаимодействия человек-общество.|^|On|^|is|^|is|^|all&all|^||^|26|^||^|ON|^|no|^||^||^|000095|^|date




[ слишком длинный топик - автонарезка ]
 
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
> Где настройки squid'а лежат? В /etc/squid.conf или /etc/squid/squid.conf?

Рекомендую - Стандарты Линукса, а ещё, в частности, Стандартная файловая система для Линукса.
 

TEvg

аксакал

админ. бан
TEvg>А нахрена? В USER да еще и в MACHINE? Сон разума! А сама винда!

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

TEvg>Да не все точно так. Заглючит user - винда с ума сходит.

Ну подсунь ей корректный из последнего бэкапа.

TEvg>Не-а. Фотошоп - редактор фоток. Вурд - редактор текста.

Мде. Это клиника.

TEvg>А что билли в вурд всякую дрянь пихает - это есть (текстовый редактор - COM-сервер, да еще с встроеными игрушками - мне хочется материться!).

Так пользуйся альтернативами, хрена ты используешь и материшься? Простые RTF даже обычный write.exe читает. Тем же Билли написанный и бесплатно в состав операционки по дефолту вставленный. Ах, таблиц хочется? Да ещё и с картинками? Да ещё и с проверкой орфографии? Да стили, да шаблоны, да обработки вские хитрые, да то сё, пятое - десятое?? Ну так и не хрен материться и смешивать его с Фотошопом, который по сути набор автономных и независимых в настройках модулей, блин.

TEvg>Неправильный фотошоп. У меня четвертый. Как-то я его облегчил (повыкидал все лишнее) и на двух дискетах отнес на другой комп (какой уж там реестр), вот уже 3 года он там работает без глюков!

Ага. 4-й, гвооришь? Ну-ка, глянь в File (кажется) - что там с экспортом в GIF?

avmich>Рекомендую...

Всё это хорошо, но что делать, когда тот же Апач, устанавливаемый из RPM ставит конфиги в /etc/httpd/, а устанавливаемый из сырцов - в /usr/local/apache/conf/ ?
 
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
>Так пользуйся альтернативами, хрена ты используешь и материшься?

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

>Простые RTF даже обычный write.exe читает.

Ой не все RTF! Не все!

>Да ещё и с картинками? Да ещё и с проверкой орфографии? Да стили, да шаблоны, да обработки вские хитрые, да то сё, пятое - десятое??

Нахер и похер! Совместимось с *.doc нужна. Все! Оказывается даже 97 не полностью с 2000 совместим. Недавно убедился.

>Ага. 4-й, гвооришь? Ну-ка, глянь в File (кажется) - что там с экспортом в GIF?

Картинку приборной доски Пе-2 в авиафоруме глянь. В нем родимом сделана. Файл=>Сохранить как=>CompuServe *.GIF
Поверишь на слово или скриншоты выложить?
 
RU Сын советского программиста #16.10.2002 11:23
+
-
edit
 
TEvg>Нахер и похер! Совместимось с *.doc нужна. Все! Оказывается даже 97 не полностью с 2000 совместим. Недавно убедился.

Вот удивительно! Не поверишь, но оказывается, некоторые программы читают GIF87, но не читают GIF89! И я уже молчу про то, что (страшно сказать!) unicode-txt не читается notepad'ом!

Никто и не обещал открытие документов 2000-го в 97. А как раз наоборот.

TEvg>Картинку приборной доски Пе-2 в авиафоруме глянь. В нем родимом сделана. Файл=>Сохранить как=>CompuServe *.GIF
TEvg>Поверишь на слово или скриншоты выложить?

Не Сохранить как, а Экспорт. Это другое. В "Сохранить как" прозрачность не задать. А вообще, я детали не помню - это было лет 5 назад :) Тогда в 4-м Фотошопе при чистке реестра экспорт отваливался. А поскольку я им постоянно пользоввался, то матерился жутко, приходилось Фотошоп переставлять.
Сын советского программиста  
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
Помоему этот топик пора закрывать, а то он перерастает в релегиозеую войну :)

Все что можно было здесь разъяснили, обсудили проблему хранилаща настроек. Да же в какой-то момент времени пришли к согласию :)
 
+
-
edit
 

Mishka

модератор
★★☆
Угу, как обычно. "В споре мудрецов родилась Истина. Истина постояла, посмотрела на их спор, и ушла по своим делам. А мудрецы продолжали спорить..." :D
 

TEvg

аксакал

админ. бан
:D

Кстати, разобрать такой конфиг на Perl'е - пара строк. А твой бинарник?

Zeus>В-3, парситься он будет явно быстрее - и числа уже в родном формате, и теги/идентификаторы/блоки - одинаковой длины...

А строки? А вот если я этот же конфиг сохраню в DBM, то он будет вчетверо больше, но читаться вдвое быстрее чистого бинарника :)

Zeus>Что касается отдельной программы конфигураций... Зачем? Только сама программа должна иметь доступ к своему конфигу.

Это характерно только для самых простых программ. Для всего чуть более сложного, чем "задать цвет кнопки" зачастую нет удобного решения по конфигурации. И для популярных решений нередко прикладывается МНОЖЕСТВО разных программ сторонних разработчиков. Начиная от кучи today-приложений для WinCE кончая кучей конфингурационного софта или, там, анализаторов логов для Linux.

Zeus>И все настройки, естественно, должны настраиваться из ее интерфейса.

А если у неё нет интерфейса? Или если конфигурилка увеличит размер программы в несколько раз?

Zeus>И нечего, повторяю, юзерам настройки руками кривить. Я даже специально конфиги шифрую и CRC-проверку ставлю :p

Юзерам - да. А админам? :) И вообще, нормальные пользователи и администраторы всю жизнь поминали по матушке программеров, которые пишут такие вот шифрованные или двоичные конфиги. Ты хочешь, чтобы тебе икалось по ночам?

TEvg>Мне вообще-то нравится когда прога - одно целое. Например это каталог в котором все и лежит.

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

TEvg>Одно и тоже приложение пихает ключи куда хочет.

Нормальное приложение кладёт конфиги в HKEY_LOCAL_(USER|MACHINE)Software(разработчик|програма). А если она туда их не кладёт - так извини, она и файлы куда хочет сможет положить.

TEvg>Сталкивались с ситуацией - прога ругается на реестр - вы ищете ключи и не всегда находите?

Нет, не сталкивался.

TEvg>Компромисный приемлемый вариант - имеется системный реестр и юзерский. Они разделены на уровне файлов. В системный проги лезть не должны! При смахивании же юзерского ОС сохраняет работоспособность.

Всё точно так и есть! SYSTEM.DAT и сменный USER.DAT!

TEvg>Если вы просто копирнете каталог с фотошопом или Оперой на другой комп или смахнете/поставите винду - они будут работать! Сравните это с офисом.

Жень, ты что, действительно не видишь принципиальной структурной разницы между Офисом и Фотошопом? Я уже молчу про Оперу?

Кстати, что до Фотошопа - хрен там он после переноса нормально работает. 5-й Фотошоп, помню, даже после чистки реестра всякими Cleaner'ами глючить начинал...

Mishka>А мне нет и вот почему. Код это неизменяемое, конфигурации и данные как раз наоборот. Первое, например, надо бэкапить один раз, а второе постоянно. Первому надо доступ только на выполнение (ну, чтение), а второму и запись и разрешение на доступ по правам, и тд.

Кстати, да. Во-первых - бэкап. Во-вторых, в случае виндов, дефрагментация.

TEvg>Жаль лишь что Билли, наглая морда, этот топик не читает.

Жень, это паталогия! :D Ну не нравится тебе Билли - сиди на Linux'е, благо сейчас это уже реально. Правда, там с конфигами всё ещё хуже. Где настройки squid'а лежат? В /etc/squid.conf или /etc/squid/squid.conf? А список хостов sendmail'а - в /etc/access, /etc/mail/access или /etc/mail/relay-domains? И так почти всюду! Всё ищется методом тыка. Хорошо если с нуля система стоит - там лишнего нет и если нашёл что-то - это оно и есть. А если как у меня на работе? Один большой апгрейд и куча обновлений вспомогательного софта. У меня конфигов Апача было 3(!) штуки! И ни один не читался пока я не нашёл 4-ю копию совсем в другом месте... Кстати, Апач сейчас по умолчанию конфиги при себе хранит, потому и найти не мог :) ...
 
+
-
edit
 

avmich

координатор

>Нормальное приложение кладёт конфиги в HKEY_LOCAL_(USER|MACHINE)

А нахрена? В USER да еще и в MACHINE? Сон разума! А сама винда!

>Всё точно так и есть!

Да не все точно так. Заглючит user - винда с ума сходит.

>Жень, ты что, действительно не видишь принципиальной структурной разницы между Офисом и Фотошопом? Я уже молчу про Оперу?

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

>Кстати, что до Фотошопа - хрен там он после переноса нормально работает. 5-й Фотошоп, помню

Неправильный фотошоп. У меня четвертый. Как-то я его облегчил (повыкидал все лишнее) и на двух дискетах отнес на другой комп (какой уж там реестр), вот уже 3 года он там работает без глюков!

>Жень, это паталогия! Ну не нравится тебе Билли - сиди на Linux'е

А я и сижу, сам знаешь на чем. ;) Как смогу там и проги писать - усядусь окончательно.

>Где настройки squid'а лежат? В /etc/squid.conf или /etc/squid/squid.conf? А список хостов sendmail'а - в /etc/access, /etc/mail/access или /etc/mail/relay-domains? И так почти всюду!

И это тоже сон разума. В BeOSе настройки как у линуха между прочим.
 

Zeus

Динамик

да, диалектика однако. Спираль - однако.
И животноводство!  
RU Владимир Малюх #17.10.2002 07:38
+
-
edit
 
Диалектика диалектикой, а кушать хочется всегда :)

Zeus>>Во-1, большинство настроек (по количеству) все-таки числовые и логические.

=KRoN=>А вот по объёму, всё же, больше текстовых данных :)

Опять же, у кого как. У меня обычно меньше - только пути всякие да по-мелочи. А на каждое окно, вон, минимум по 4 числа помнить надо - позиция и размер.

Zeus>>Во-2, бинарный файл при прочих равных меньше. В несколько раз.

=KRoN=>Ну-ну. Вот типичный конфиг Форумов - уменьши его в несколько раз переводом в бинарный :)

Ха! Форумам - форумово. Это же практически гольный текст в основе :)

=KRoN=>Кстати, разобрать такой конфиг на Perl'е - пара строк. А твой бинарник?

Ну так Перл и заточен под строки. Бинарник я буду своими инструментами разбирать. Можно вообще сделать так, что его разбирать не надо будет - просто загрузить в область переменных и все :)
Кстати, объем кода и его скорость нередко находятся в обратной зависимости друг от друга ;)

=KRoN=>Для всего чуть более сложного, чем "задать цвет кнопки" зачастую нет удобного решения по конфигурации.

Надо придумать.

=KRoN=>И для популярных решений нередко прикладывается МНОЖЕСТВО разных программ сторонних разработчиков.

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

Zeus>>И все настройки, естественно, должны настраиваться из ее интерфейса.

=KRoN=>А если у неё нет интерфейса? Или если конфигурилка увеличит размер программы в несколько раз?

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

=KRoN=>Юзерам - да. А админам? :)

Каждый юзер мнит себя админом. И плох тот юзер, который не мечтает стать... и т.п. :D

=KRoN=>И вообще, нормальные пользователи и администраторы всю жизнь поминали по матушке программеров, которые пишут такие вот шифрованные или двоичные конфиги.

Это еще вопрос, кто нормальный ;) В чисто утилитарных проприетарных прогах (от чатов до Фотошопа) нечего админить. Можно сказать, что шифровкой конфига я просто восполняю пробел файловой системы, которая не позволяет надежно защитить от записи (юзером) конфиг-файл. Вдобавок проще читать: если я знаю, что конфиг записан мной, то знаю, что он корректен, и мне не надо каждый параметр проверять на корректность.
Maschinen muessen "idiotensicher" werden  
RU Владимир Малюх #17.10.2002 07:39
+
-
edit
 
TEvg>Реестр в некотором смысле - абсолютный адрес. ;) Ведь настройки проги надо хранить там где прога! В ее родном каталоге!

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

TEvg>В результате - реестр не мусорится, а значит живучесть винд увеличивается.

Каким образом? Ну имеет себе программулька в реестре свои установки, виндам-то они при каком боку?

TEvg>Удалять прогу можно как угодно - взял и стер, никаких следов. Можно прогу мереместить в другой каталог или другой комп - все будет работать нормально.

По серету - вместе с нейй ее реестр тоже можно переместить.
Maschinen muessen "idiotensicher" werden  

TEvg

аксакал

админ. бан
>>При запуске с сидюка

TEvg>Виктор! Скажи много ты видел вин-прог предназначенных для запуска с сидюка??

Любая демка.


TEvg>Я сколько прог на сидюках видел - везде setup.exe, щелкаешь его - и прога спрашивает - поставимся на диск С?

Мало смотрите, Женя :)
 
+
-
edit
 

=KRoN=
Balancer

администратор
★★★★☆
>Ага, если программка установлена на серваке а пускают ее с десятка рабочих станций. Или пусть даже на станции, но работают с ней несколько юзеров с разными логинами.

Именно таких у меня половина. Знаешь как сделано? Прога пускается с сервака, а все юзерные настройки хранятся на серваке в базе данных. А чтоб юзерные реестры подергать - ни-ни!

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

>Каким образом? Ну имеет себе программулька в реестре свои установки, виндам-то они при каком боку?

Опыт показывает - не трогаешь говно - не воняет. А если винда помрет? Настройки накроются.

>По серету - вместе с ней ее реестр тоже можно переместить.

Как? user.dat переписать - винда с ума сойдет.

>Любая демка.

О О О! Демки только в реестр и пускать! Без него они обойтись не могут!
 
1 2 3 4 5 6 7 8

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru