Author Topic: Новая стабильная версия 0.95.7  (Read 5721 times)

0 Members and 1 Guest are viewing this topic.

Offline dartraiden

 

Offline lokapal

Re: Новая стабильная версия 0.95.7
« Reply #1 on: 09 11 2017, 08:30:26 »
Всё это, конечно, волшебно, но!  :D
На компьютерах, на которых НЕТ MS Runtimes от 17й или какая-там-нужна версии, если mirandе разрешено обновляться самой, то она молча обновляется, и на старте падает. Надо это в плагине updater или в самой Miranda предусмотреть, вообще-то. Сообщение выводить, или ссылку, или ещё как. Иначе многие впадают в состояние под названием "созерцание собственного пупка"  ;)
Сейчас уж поздно, конечно (у всех, у кого работает - старые версии апдейтера и/или miranda), но хоть на будущее.
И, кстати, полный инсталлятор должен или нести в себе инсталляторы всех нужных runtimes, или качать их из сети с сайта MS и устанавливать по мере надобности (кстати, апдейтеру бы тоже не помешала такая функциональность).
P.S. Ничего из выше описанного можно не делать, если miranda-ng делается только для обитателей форума  :)
« Last Edit: 09 11 2017, 08:35:34 by lokapal »
 

Offline dartraiden

Re: Новая стабильная версия 0.95.7
« Reply #2 on: 09 11 2017, 12:39:11 »
Quote
если mirandе разрешено обновляться самой, то она молча обновляется, и на старте падает
Quote
Сообщение выводить, или ссылку, или ещё как. Иначе многие впадают в состояние под названием "созерцание собственного пупка"
В запускаче (Miranda32/64.exe - статически собранный запускач для mir_app) зашита логика "рантайма нет в системе или в /Libs -> выдаём пользователю сообщение, предлагающее открыть в браузере URL для загрузки инсталлятора рантайма с сайта MS". Обновление с предыдущей стабли оттестировано, апдейтер корректно выкладывает новый рантайм в /Libs и подчищает старый (2010) из корня. Если даже апдейтер вдруг по какой-то причине облажается и не вывалит новый рантайм, то сработает описанная в первом предложении логика. Ничего не должно падать.

Quote
И, кстати, полный инсталлятор должен или нести в себе инсталляторы всех нужных runtimes
Инсталлятор содержит все необходимые dll и заботливо вываливает их в /Libs, где их ожидает увидеть Миранда. Подход "мы положим инсталлятор в инсталлятор, чтобы ты мог инсталлировать во время инсталляции" обсуждался и признан избыточным. Пришлось бы держать в инсталляторе одновременно и инсталлятор рантайма (чтоб поставить его системно) и те же самые библиотеки рантайма в распакованном виде (чтобы положить их в /Libs при портативной установке). Поэтому, инсталлятор без всяких раздумий кладёт все нужные библиотеки в /Libs, и это работает и при обычной установке (когда у пользователя есть права администратора для установки в Program Files) и при портативной (когда прав на установку софта нет или есть желание получить портативную Миранду).

Единственный баг, который был - библиотеки выкладывались в Libs} вместо Libs (и Миранда их, конечно, не находила), но он уже исправлен и инсталляторы пересобраны.