| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [Qt5.3] - Проблема первого запуска на чужой машине |
| Автор: Dreamer_0x01 29.10.2015, 11:07 | ||||
| Здравствуйте. Сделал программу, отладил. Скопировал в папку с программой все нужные dll, сделал инсталятор (с помощью NSIS), через инсталятор устанавливаю программу заказчику. Получается такая картина. Заказчик через инсталятор ставит себе программу. Все копируется как надо, структура папок создается, dll копируются. Далее заказчик запускает exe-файл - получает ругательство о том, что не найден Qt5Core.dll. Я уже было подумал, что забыл его включить в инсталятор - но он там есть, на комп к заказчику тоже поставился... А дальше - интереснее. В окошке, в котором сообщается, что нет Qt5Core.dll - есть кнопочки закрытия и кнопочка ОК. Так вот, если нажать кнопку ОК - окно закрывается, но спустя секунд 5-10 - ....вдруг открывается окно с моей программой, которая работает как ни в чем не бывало. А если программу закрыть и запупустить снова, то запуск происходит нормально и сразу, никаких ругательств ни на какие dll нет. То есть проблема есть только при первом запуске при установке приложения в новую папку. Если установить в другую - происходит все то же самое - первый запуск - ругателство на dll - нормальный запуск программы спустя 5-10 секунд - отсутствие ошибки при повторных запусках. Может, кто-то подскажет, чем вызван такой эффект? В программе используются: библиотеки для работы с xml, sql, gui. Вот про-файл:
Вот список dll, которые устанавливаются вместе с программой (кусок скрипта из NSIS):
|
| Автор: math64 29.10.2015, 11:15 |
| Укажите какая ОС и антивирус используется, скорее всего при первом запуске dll блокируется антивирусом. |
| Автор: borisbn 29.10.2015, 11:32 |
| Может это https://code.google.com/p/simulationcraft/issues/detail?id=2271 или это https://code.google.com/p/simulationcraft/issues/detail?id=1846 поможет |
| Автор: Dreamer_0x01 4.11.2015, 13:03 |
| math64, извиняюсь за долгое молчание, было никак не получить эту информацию от того заказчика. У него Windows 7 профессионал 64х, аваст. borisbn, почитал, хотя и не очень совершенен в английском. Как я понял, они решили эту проблему установкой программы не в стандартные папки windows, а в другое место (в их примере - на раздел D:\). Это не выглядит решением проблемы - скажем так, не очень хорошо пользователю захламливать корневые разделы дисков дополнительными папками при установке своих программ. Разве что только как крайняя мера. |