Miranda NG Official Community Forum

Miranda NG русскоязычный форум => Новости => Topic started by: dartraiden on 10 01 2020, 12:34:26

Title: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: dartraiden on 10 01 2020, 12:34:26
Проблема возникает с базами, созданными с помощью ранней версии драйвера MDBX… для успешного обновления сделайте следующее:

После восстановления предыдущей версии программы из резервной копии (\каталог Миранды\Plugin Updates\Backups), войдите в профиль и сожмите его («База данных → Сжать» в главном меню). Сделайте резервную копию профиля и обновите программу.
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: Dm1 on 23 07 2022, 12:02:43
Способ не работает при обновлении с 0.95.12.1 на 0.96.1.0.
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: dartraiden on 23 07 2022, 12:05:42
У этой ошибки могут быть разные причины, вплоть до того, что на новой версии отсутствует нужный драйвер базы (например, если профиль в формате MDBX, а dbx_mdbx пользователь установить забыл).
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: Dm1 on 23 07 2022, 14:56:57
Проблема в том, что это делает не пользователь, а автоматическое обновление Miranda NG. При обновлении с 0.95.12.1 на 0.96.1.0 старый драйвер базы удаляется, но база не обновляется на новый формат, который будет необходим после обновления. Как-то недальновидно.
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: dartraiden on 23 07 2022, 15:40:02
А почему он удаляется... Если он был в старой версии (а он был, база ведь как-то открывалась), то он обновится до актуальной, но мы его не удаляем.

Даже в коде (https://github.com/miranda-ng/miranda-ng/blob/0_96_1/plugins/PluginUpdater/src/DlgUpdate.cpp#L466) видно, что dbx_mdbx в списке на принудительное удаление отсутствует, удаляются только вспомогательные утилиты.

Можете дать старую версию Миранды со всеми плагинами (без базы)?
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: Dm1 on 23 07 2022, 16:38:26
Вот 0.95.12.1 https://disk.yandex.ru/d/fcPDZze8VrBezw (https://disk.yandex.ru/d/fcPDZze8VrBezw), которая при запуске желает обновиться и после этого сразу ломается.
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: dartraiden on 24 07 2022, 12:03:41
Проблема в том, что в корне осталась libmdbx.mir. Она должна была стереться, но по какой-то причине этого не происходит. В новой версии библиотека лежит в Libs, а старая остаётся лежать в корне. Из-за того, что винда при запуске приложения всегда сперва ищет требуемое в корне, первой попадается старая библиотека и драйвер падает.

Таким образом, в качестве временного решения достаточно стереть её вручную после обновления:
- обновиться
- когда Миранда скажет про неизвестный формат профиля, удалить libmdbx.mir из корневого каталога вручную
- снова запустить Миранду
Title: Re: Ошибка «Miranda NG не может открыть <имя_профиля>, профиль в неизвестном формате
Post by: Dm1 on 25 07 2022, 08:25:41
Спасибо! После удаления libmdbx.mir обновление базы проходит в штатном режиме. Действительно получилось наоборот, не нужный плагин удаляется, как я предполагал, а остается на месте более не нужный  ;D