Название: Ошибка Отправлено: demaker от Июнь 06, 2013, 11:38 Тестирую код программы.
Сначала работает нормально. Затем после некоторых манипуляций происходит зависание. Во вложение картинка с сообщением. Что это за ошибка и как от нее избавиться? Название: Re: Ошибка Отправлено: mutineer от Июнь 06, 2013, 11:39 ошибка работы с памятью. Обращение по дикому указателю, скорее всего
Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 11:45 В консоль без дебага выдает код ошибки -805306369.
ошибка работы с памятью. Обращение по дикому указателю, скорее всего И что делать-то???Название: Re: Ошибка Отправлено: mutineer от Июнь 06, 2013, 11:47 Искать где ты портишь какой-то указатель. Или где-нить выходишь за пределы массивы. В общем искать неверную работу с памятью. Возможно тебе поможет стек (в нижнем левом углу твоего скриншота)
Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 11:50 М-да наверное это надолго :-\
Название: Re: Ошибка Отправлено: mutineer от Июнь 06, 2013, 11:57 Судя по количеству файлов да
Название: Re: Ошибка Отправлено: Kurles от Июнь 06, 2013, 12:01 Судя по количеству файлов да Ну не так и много )Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 12:02 Наверное, проще переписать все...
Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 12:31 не могу понять, уже тестирую код как полчаса,багов нет.
??? ??? ??? Название: Re: Ошибка Отправлено: mutineer от Июнь 06, 2013, 12:37 Да, это тяжелоуловимая ошибка. Потому что память под битым указателем может быть выделена, а может и не быть, как повезет
Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 13:17 А может эта ошибка возникать из-за ОС???
ole32.dll может вызывать сообщение об ошибке в Винде. У меня Windows7. Название: Re: Ошибка Отправлено: kambala от Июнь 06, 2013, 13:20 даже не надейся на это, точно где-то битый указатель сидит. первым делом поищи по слову delete — может ты где-то руками удаляешь объект, которому назначен родитель.
Название: Re: Ошибка Отправлено: Old от Июнь 06, 2013, 13:59 может ты где-то руками удаляешь объект, которому назначен родитель. Эта ситуация обрабатывается в деструкторе и совершенно не опасна. Название: Re: Ошибка Отправлено: demaker от Июнь 06, 2013, 15:20 Вот код с удалением объектов
можете сказать что тут может быть неправильно Код: void Widget::deletePlot(QTreeWidgetItem * item) Код: void widgetPlots::removePlotItem(ListWidgetItem*lwi) Код: void Widget::sl_deletePlotWidget(plotWidget *pw) Название: Re: Ошибка Отправлено: Kurles от Июнь 06, 2013, 16:31 Вот код с удалением объектов невалидный или нулевой указатель в процедуру передаваться может. А так вроде хорошо все.можете сказать что тут может быть неправильно Код: void Widget::deletePlot(QTreeWidgetItem * item) Код: void widgetPlots::removePlotItem(ListWidgetItem*lwi) Код: void Widget::sl_deletePlotWidget(plotWidget *pw) Название: Re: Ошибка Отправлено: kambala от Июнь 06, 2013, 18:02 может ты где-то руками удаляешь объект, которому назначен родитель. Эта ситуация обрабатывается в деструкторе и совершенно не опасна. Название: Re: Ошибка Отправлено: demaker от Июнь 07, 2013, 11:52 странно, а я помню натыкался на краши в таком случае А в каком именно ??? Может мне поможет :) Название: Re: Ошибка Отправлено: kambala от Июнь 07, 2013, 11:53 я ж написал в каком, даже в цитате отображено
Название: Re: Ошибка Отправлено: demaker от Июнь 07, 2013, 12:21 ;D извините
Название: Re: Ошибка Отправлено: kambala от Июнь 07, 2013, 15:08 проверил на это тестовом проекте — и правда не крашится. может я тогда еще указателю 0 присваивал или он был QPointer…
Название: Re: Ошибка Отправлено: demaker от Июнь 10, 2013, 10:26 проверил на это тестовом проекте — и правда не крашится. может я тогда еще указателю 0 присваивал или он был QPointer… ??? Название: Re: Ошибка Отправлено: demaker от Июнь 10, 2013, 10:27 невалидный или нулевой указатель в процедуру передаваться может. А так вроде хорошо все. ??? можно поподробнее Название: Re: Ошибка Отправлено: demaker от Июнь 10, 2013, 12:59 При тесте в консоле выдал:
Код: Invalid parameter passed to C runtime function. И еще винда выдала сообщение об ошибке(во вложенеи) Подскажите, что это может значить? Название: Re: Ошибка Отправлено: Bepec от Июнь 10, 2013, 13:03 ы. Деадлок впервые? с почином :D
PS мутексы пересекаются и умирают друг в друге. Название: Re: Ошибка Отправлено: demaker от Июнь 10, 2013, 13:05 ы. Деадлок впервые? с почином :D PS мутексы пересекаются и умирают друг в друге. А первые четыре это, что??? Как мне поймать этот баг? Название: Re: Ошибка Отправлено: demaker от Июнь 11, 2013, 16:35 Нашел часть кода, в котором возможна ошибка
Код: if(type_plot == ANALOG_TYPE) Не могу понять почему ??? Может Код: setAxisScale(QwtPlot::yRight, -(this->size().height() - 20)/(2*optimum_scale_primary), (this->size().height() - 20)/(2*optimum_scale_primary)); //!!!!!!!!!!Если оставить Название: Re: Ошибка Отправлено: kambala от Июнь 11, 2013, 16:56 если попадает в элс, то для data не выделяется память. подозреваю, что где-то в другой части программы написано delete data, отсюда и обращение по невалидному указателю.
Название: Re: Ошибка Отправлено: demaker от Июнь 11, 2013, 17:27 Да нет все норм.
т.к. есть Код: curve->attach(this); Название: Re: Ошибка Отправлено: demaker от Июнь 20, 2013, 16:23 Скажите,а возможен такой вариант.
У меня в QtSDK mingw32, а у меня 64-битная ОС и поэтому возникает ошибка??? Название: Re: Ошибка Отправлено: kambala от Июнь 20, 2013, 16:49 нет
Название: Re: Ошибка Отправлено: demaker от Июнь 21, 2013, 10:40 нет Пробовал. ??? только почему-то на 32-битной не выдает ошибку ??? |