Просмотр сообщений
|
Страниц: 1 [2] 3 4 ... 7
|
16
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 29, 2021, 20:54
|
если совсем нет догадок о причинах, берешь то окно и начинаешь отключать куски его кода, пока не локализуешь краш.
еще попробуй через valgrind или подобную утилиту прогнать — высока вероятность, что где-то бьется память, оттого и такой странный стэктрейс.
еще раз, я прохожу корректно closeEvent и деструктор окна, потом я иду по dll типо Q5Widgets и нажимаю f10,f10 как только я дохожу до Q5Guid он попадает в нее и падает, куски кода комментировать не имеет смысла, я прохожу полность события в отладке close и деструктора, больше кода и нету в принципе,чтобы его проходить и отлаживать,это уже внутренности Qt!
|
|
|
17
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 29, 2021, 19:39
|
я понимаю, но почему отладчик тогда не показывает причину, а ссылается на QtGuid.dll и указывает на общую строку exec?
А он (отладчик) в "нутро" заходит? Т.е. если дойти до app.exec() и сделать "step in" (не знаю какая клавиша в Вашем IDE), то Вы "ходите" по коду Qt либы? Если нет, то надо "пересобирать", иначе ловить нечего. И собирать в новые папки/мамки (а не поверх старых) Поставил break на строчку app.exec(), естественно приложение там встало, никакие окна не отображаются, нажал Step Into, все заработало, пошел процесс отображения окон и работы самого приложения. По чему конкретно я еще должен ходить?К примеру, по событию закрытия окна closeEvent я хожу
|
|
|
18
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 29, 2021, 17:29
|
то приложение падает на строке, которую я писал выше.
Проблема не обязательно именно в этой строке. Но, опять же, без кода это всё - гадание. я понимаю, но почему отладчик тогда не показывает причину, а ссылается на QtGuid.dll и указывает на общую строку exec?
|
|
|
19
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 29, 2021, 15:24
|
Ну, буст использует куча людей и вряд ли дело в нём. А вот по метатрейдеру я бы напрягся. Оно ведь кривое, даже без Qt.
да, но это проблема возникает только при закрытии (X) одного из окон приложения и только в режиме debug, во всех остальных случаях, которые я видел и использовал,ничего подобного и критичного нет.Когда приложение создает окно дополнительное и ты его закрываешь, то приложение падает на строке, которую я писал выше. Ни на access violation ни на что-то подобное он не ругается
|
|
|
22
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 27, 2021, 19:45
|
В папке с приложением есть библиотеки Qt? Как будто разные версии Qt.
У меня еще почему-то настройки стоят(см.картинку 5.14), а при сборке пишет : 'BksMtRisk.exe' (Win32): Loaded 'C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Guid.dll'. сменил : 'BksMtRisk.exe' (Win32): Loaded 'C:\Qt\Qt5.14.2\5.14.2\msvc2017_64\bin\Qt5Guid.dll'. результат такой же
|
|
|
24
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 27, 2021, 19:20
|
В папке с приложением есть библиотеки Qt? Как будто разные версии Qt.
У меня еще почему-то настройки стоят(см.картинку 5.14), а при сборке пишет : 'BksMtRisk.exe' (Win32): Loaded 'C:\Qt\Qt5.13.2\5.13.2\msvc2017_64\bin\Qt5Guid.dll'.
|
|
|
28
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 27, 2021, 15:55
|
а инсталлера для 5.15 я не нашел, последний который был,это как раз 5.14. Если есть ссылка,то можно?
Качаете любой инсталлятор Qt и просто ставите. Там уже 6.0.1 вполне ставится, буквально сегодня пробовал. На винде. На linux 5.15.2. И свежее, в ближайшем будущем, точно не будет. Можно ссылку на инсталлер,чтобы установить 5.15?НЕ совсем понимаю, где я на любом инсталлере смогу выбрать 5.15, если он для конкретной версии?На винду. Пример:https://download.qt.io/archive/qt/5.14/5.14.0/ файл qt-opensource-windows-x86-5.14.0.exe Для 5.15 и 6.0 не вижу таких файлов в архиве
|
|
|
30
|
Qt / Вопросы новичков / Re: Непонятное падение программы
|
: Январь 27, 2021, 14:05
|
все то,что я скинуд в шапке темы. Все проходит и работает, но когда отпускаешь breakpoint и нажимаешь f5, то падает на app.exec()
обычно отладчик останавливается и показывает где упал без кода - предположу что идет освобождение ранее освобожденного экземпляра класса он останавливается на строчке: ----->int app_ret = app.exec();
|
|
|
|
|