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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема в работе программы на других компах.  (Прочитано 7269 раз)
Jkc
Гость
« : Декабрь 11, 2007, 14:00 »

Написал программу для работы с БД. (Qt 3.3.4, WinXP)
На рабочем компе всё нормально работает, а вот на других, при закрытии приложения
вылетает системное сообщение, что обнаружена ошибка и т.п. хотя до закрытия проблем нет.
В чем может быть проблема?
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #1 : Декабрь 11, 2007, 14:37 »

Написал программу для работы с БД. (Qt 3.3.4, WinXP)
На рабочем компе всё нормально работает, а вот на других, при закрытии приложения
вылетает системное сообщение, что обнаружена ошибка и т.п. хотя до закрытия проблем нет.
В чем может быть проблема?

Странно, что и на рабочем не вылетает. А должна бы. Скорее всего где то создаешьдинамическую переменную и не удаляешь ее при завершении программы. Копай в этом направлении. Удачи.
Записан
Jkc
Гость
« Ответ #2 : Декабрь 11, 2007, 14:59 »

Цитировать

Странно, что и на рабочем не вылетает. А должна бы. Скорее всего где то создаешьдинамическую переменную и не удаляешь ее при завершении программы. Копай в этом направлении. Удачи.

А иного пути нет? Ведь на рабочем компе всё в порядке.
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #3 : Декабрь 11, 2007, 15:01 »

Ведь на рабочем компе всё в порядке.

имхо, просто везёт. Я бы посветовал собрать под Линукс и проверить на этой платформе. Ошибка должна проявиться
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
vregess
Гость
« Ответ #4 : Декабрь 11, 2007, 15:21 »

имхо, просто везёт.

научное такое объяснение ))

собери дебаг версию и запусти под отладчиком, может это прольет свет на происходящее.
или, если без отладчика, натыкай Q_ASSERT() в подозрительных местах (если найдешь такие).
Записан
Jkc
Гость
« Ответ #5 : Декабрь 11, 2007, 15:37 »


Цитировать

Странно, что и на рабочем не вылетает. А должна бы. Скорее всего где то создаешьдинамическую переменную и не удаляешь ее при завершении программы. Копай в этом направлении. Удачи.


Возможно так оно и есть а как по удалять эти динамические переменные во время закрытия приложения?
Записан
Kainit
Гость
« Ответ #6 : Декабрь 11, 2007, 15:39 »

Если быть кратким, поставьте BoundChecker и просмотрите всё аккуратно с ним.
Ошибка судя по описанию - типичная проблема при некорректной работе с памятью.
Записан
Jkc
Гость
« Ответ #7 : Декабрь 11, 2007, 16:04 »

Вроде нашёл, в чём причина.
Дело в том, что я переопределял главную диалоговою форму программы.
Для возможности добавления кнопки сворачивания на панель задач. Но не
переопределил деструктор. После переопределения деструктора вроде всё 
заработало. Спасибо всем кто помогал.
Записан
Jkc
Гость
« Ответ #8 : Декабрь 11, 2007, 17:05 »

Рано радовался, теперь какая то фигня, появляется во время выключения компа Улыбающийся)))
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #9 : Декабрь 11, 2007, 17:16 »

Рано радовался, теперь какая то фигня, появляется во время выключения компа Улыбающийся)))

Фигня это наверно плохо. Однако не совсем информативно.
Записан
Вячеслав
Гость
« Ответ #10 : Декабрь 11, 2007, 23:46 »

На рабочем компе - случаем не debug версия ? Если так - смело ищем ляп при работе с памятью Подмигивающий
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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