Russian Qt Forum
Ноябрь 23, 2024, 22:02 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Плагины Qt: падение при загрузке  (Прочитано 3077 раз)
Странник
Гость
« : Февраль 15, 2013, 10:23 »

Добрый день.
В детали процесса загрузки плагинов Qt не погружался и, к сожалению, не имею пока времени. Возможно, кто-нибудь подскажет. Итак.
Существует Qt-программа со встроенной системой автообновления. Алгоритм обновления такой:
1) старые файлы переименовываются (добавляется .bak к имени файла)
2) загружаются новые файлы
3) запускается новая версия
4) если запуск успешен - .bak файлы удаляются, иначе обновление откатывается

Очередная версия программы была собрана более новой версией компилятора MinGW и с обновленной версией Qt-библиотек (4.8.4). Обновление программы до этой версии не проходит - новая версия падает при запуске. Установлено, что проблема возникает при попытке загрузить плагин imageformats/qgif4.dll.bak - от старой версии программы, как ясно из названия. Как избежать загрузки этого плагина? Возможно, существуют методы без манипуляций с самим файлом плагина?
Записан
_OLEGator_
Гость
« Ответ #1 : Февраль 15, 2013, 10:28 »

Решение в лоб - не переименовывать файлы, добавляя .bak, а перемещать их в папку backup, с сохранение структуры или без, это уже на любителя.
Записан
Странник
Гость
« Ответ #2 : Февраль 15, 2013, 11:29 »

Решение в лоб - не переименовывать файлы, добавляя .bak, а перемещать их в папку backup, с сохранение структуры или без, это уже на любителя.
собственно, подобные варианты (перемещения, сложные переименования) и подразумевались под манипуляциями с файлом плагина = ) это, в общем-то, не проблема. интересуют другие пути, если они есть.
Записан
Dancing_on_water
Гость
« Ответ #3 : Март 16, 2013, 09:00 »

Модули в Qt это все тежесамые dll-ки. И при обновлении компилятора возникают всетеже проблемы с бинарной совместимостью. Посему вопрос:
Модули пересобирались с новым мингв и qt?
Записан
Странник
Гость
« Ответ #4 : Март 16, 2013, 23:24 »

Модули в Qt это все тежесамые dll-ки. И при обновлении компилятора возникают всетеже проблемы с бинарной совместимостью. Посему вопрос:
Модули пересобирались с новым мингв и qt?

проблема в том, что программа, собранная более новой версией компилятора, при запуске пытается загрузить еще не удаленный плагин, собранный старой версией. хотелось получить больше контроля над процессом загрузки Qt-плагинов, но увы и ах.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.128 секунд. Запросов: 20.