|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton Я абсолютно поддержу этот aproach как родной для Unix/Linux подобных конфигураций. Он исторически прижился и вообще файлы в Linux системах наполнены более широким смыслом нежели в Windows. Сюда-же семантика скрытого фолдера (начинающийся с точки). Это все - наследние Unix/Linux. Семантика скрытого фолдера, насколько я знаю, это был баг в первых версиях ФС Юникс. И каким же таким более широким смыслом файлы наполнены в Юникс/Линукс нежели чем в Виндах? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 15:54 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
petrav, почитай сам. Блочные устройства. Каналы и сокеты. С помощью канальных устройств (mknod) я делал в Linux/Ext3 для Оракла такие штуки которые в Windows/NTFS принципиально невозможно повторить. Скрытый фолдер был скорее багом утилит листинга которые скрывали фолдер с предшетсвующей точкой "." и эта традиция и сегодня используется в Linux/Unix и к моему ужасу ее перенесли на Windows просто как порты исходников Linux приложений. Я по прежнему настаиваю на пользе использования Windows registry для Windows приложений пока мне не доказали обратное. Тоесть не доказали что реестр опасе или вреден или создает перформанс-проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 16:26 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton petrav, почитай сам. Блочные устройства. Каналы и сокеты. Воля ваша, но могли бы конечно хотя бы один use case на пальцах пояснить. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 16:46 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
С ораклом? Ну вот по аналогии с этим. Почитай как толстяк Бурльсон делает экспорт БД в условиях нехватки места. http://www.dba-oracle.com/t_export_2_gig_limit.htm И обрати внимание как работает mknod в операционке linux. Код: plaintext 1. 2.
Только у меня интереснее было. У меня на 1 физическом сервере стояло 2 БД. И я экспортировал одну и импортировал в другую одновременно. А толстяк просто сохраняет по конвейеру в файл а потом архивирует gzip-ом. В скобках замечу что утилита exp/imp НЕ УМЕЕТ работать с STDIN/STDOUT. Это важно. И попробуй это повторить на Windows. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 16:51 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton И попробуй это повторить на Windows. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:00 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
maytonТоесть не доказали что реестр опасе или вреден или создает перформанс-проблемы. Во-первых, работа с ним тривиально сложнее. Топикстартер, вон, так и не осилил. Во-вторых, как я уже сказал, у него нет локальной ветки для пользователя, только перемещаемая. То есть данные, привязанные к конкретному пользователю И рабочей станции хранить без извращений не получится. В-третьих, система считает его своей частью, поэтому бэкапит (и что самое плохое - восстанавливает) целиком как часть точки восстановления когда ей в голову взбредёт. Ну и, как всякое структурированное хранилище, иногда он имеет привычку портиться. После чего следует п.3. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:08 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonТоесть не доказали что реестр опасе или вреден или создает перформанс-проблемы. Во-вторых, как я уже сказал, у него нет локальной ветки для пользователя, только перемещаемая. То есть данные, привязанные к конкретному пользователю И рабочей станции хранить без извращений не получится. Понимаешь. Мы не можем брать за правило - рассматривать исключения как норму или как основу для архитектур. Если админ зобанил ветку пользователя - то да. Ну пиши в каталог пользователя. Потом он зобанит каталог пользователя - ты будешь писать в веб-сокет ну и так далее. До полного абсурда. Если админ не хочет чтобы софт работал - развеж мы тут ему помешаем? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:23 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, 1. Согласен. Не умеет реестр, пусть файл пишет 2. Настройки для всех обычно прав нет. Ну, MS не рекомендует. 3. Бэкап автоматом это супер 4. Портится положения окон? Ну и фиг с ними ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:25 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov В-третьих, система считает его своей частью, поэтому бэкапит (и что самое плохое - восстанавливает) целиком как часть точки восстановления когда ей в голову взбредёт. А вот это уже интересно обсудить без админа. Просто как частный случай. Был восстановлен старый снапшот реестра. Каково будет поведение приложения? Я думаю - программист ответит нам. Кстати поведение приложения хранящего конфиги на файлах не будет лучше в данном случае. Тоже обсуждается. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:25 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov maytonТоесть не доказали что реестр опасе или вреден или создает перформанс-проблемы. Во-первых, работа с ним тривиально сложнее. Топикстартер, вон, так и не осилил. Не согласен. Я думаю что на файловых операциях мы ТС-а похороним еще быстрее. Работая с реестром - он работает атомарно к ключами и значениями. В файлах - больше стейта. Больше аномалий. Файл надо грамотно открыть. Грамотно распарсить. Модифицировать. И закрыть. Много рутины короче для вместо того чтобы key-value взят-положить. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:29 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
GetPrivateProfileStringW - вроде проще реестра ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:40 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
m_Sla GetPrivateProfileStringW - вроде проще реестра Это вообще полный капец. В msdn пишут что эта функция осталась только для совместимости с Windows-3.1. Тоесть это не то что тухляк. Это уже археологическая находка. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:45 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton Не согласен. Я думаю что на файловых операциях мы ТС-а похороним еще быстрее. Работая с реестром - он работает атомарно к ключами и значениями. С ключ-значение атомарно. Но есть ли большая польза от атомарности на уровне одного значения? Поддерживает ли реестр транзакции? Файл заблокировать то не очень сложно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 17:54 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
petrav, В реестре есть дерево. Класс такой в дельфи появился не давно. А в Си? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 18:34 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
petrav mayton Не согласен. Я думаю что на файловых операциях мы ТС-а похороним еще быстрее. Работая с реестром - он работает атомарно к ключами и значениями. С ключ-значение атомарно. Но есть ли большая польза от атомарности на уровне одного значения? Поддерживает ли реестр транзакции? Файл заблокировать то не очень сложно. Вот что-то есть https://docs.microsoft.com/en-us/windows/win32/api/winreg/nf-winreg-regopenkeytransacteda надо читать и разбираться. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 18:37 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
PetroNotC SharpНастройки для всех обычно прав нет. Ну, MS не рекомендует. Похоже, вы, ребята, не в теме. Почитайте на досуге про различия между FOLDERID_LocalAppData, FOLDERID_RoamingAppData и FOLDERID_ProgramData в условиях roaming profiles домена Windows. И если найдёте - то же самое про реестр. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 18:48 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton, Да не нужны там транзакции. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 18:49 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Я не только читаю, но пишу туда ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 18:50 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton m_Sla GetPrivateProfileStringW - вроде проще реестра Это вообще полный капец. В msdn пишут что эта функция осталась только для совместимости с Windows-3.1. Тоесть это не то что тухляк. Это уже археологическая находка. Вроде как с *.ini по другому никак не поработать штатными средствами. А так да, тухляк, начиная с Win7 ее опошлили добавив кэширование в виртуальном реестре, в итоге какие-то криворукие индусы это дописывали, поэтому работает, но иногда запись через WritePrivateProfileString() не происходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:06 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
petrav mayton Не согласен. Я думаю что на файловых операциях мы ТС-а похороним еще быстрее. Работая с реестром - он работает атомарно к ключами и значениями. С ключ-значение атомарно. Но есть ли большая польза от атомарности на уровне одного значения? Поддерживает ли реестр транзакции? Файл заблокировать то не очень сложно. SQLite - и транзакции, и один файл данных, и один файл исходника, и еще куча плюшек. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:08 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Dima T petrav пропущено... С ключ-значение атомарно. Но есть ли большая польза от атомарности на уровне одного значения? Поддерживает ли реестр транзакции? Файл заблокировать то не очень сложно. SQLite - и транзакции, и один файл данных, и один файл исходника, и еще куча плюшек. +1 Но оверхед в цепочке ini - - > Реестр - - > sqlite ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:16 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
Видите как интересно. За 30 лет эволюции Windows так и не обзавёлся лаконичным встроенным средством для работы с файловыми конфигами. Вы все еще работаете с "мешком свойств". Даже не json/yaml. SQLite надо обсуждать. У него тоже есть оверхед вида "журнал". Мало кому понравится если 1000 раз модифицировав свойство ваш конфиг умножится в 100 раз по занимаемому месту. Тоесть нужно придумывать какие-то механизмы самообслуживания. Схлопывания журнала. Или какую-то там архивацию. В свете всего этого registry по прежнему выглядит привлекательнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:26 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Но оверхед в цепочке ini - - > Реестр - - > sqlite В смысле? sqlite медленнее читает/пишет чем ini или реестр? ini однозначно тормознее, т.к. индексов не предусмотрено, реестр тоже СУБД, хз быстрее ли он чем sqlite. Да и не надо супер скоростей для чтения настроек, а если надо, то в переменных кэшировать и будет точно быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:26 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton SQLite надо обсуждать. У него тоже есть оверхед вида "журнал". Мало кому понравится если 1000 раз модифицировав свойство ваш конфиг умножится в 100 раз по занимаемому месту. Тоесть нужно придумывать какие-то механизмы самообслуживания. Схлопывания журнала. Или какую-то там архивацию. Все уже есть, только включать надо PRAGMA schema.auto_vacuum ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:31 |
|
Запись в реестр
|
|||
---|---|---|---|
#18+
mayton Видите как интересно. За 30 лет эволюции Windows так и не обзавёлся лаконичным встроенным средством для работы с файловыми конфигами. Вы все еще работаете с "мешком свойств". Даже не json/yaml. Есть библиотека MSXML. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2020, 19:39 |
|
|
start [/forum/topic.php?fid=57&msg=40031838&tid=2017253]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 130ms |
0 / 0 |