Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Crash программы 
:(
    Опции темы
Wolf1994
Дата 13.6.2009, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: нет
Всего: 29



Моя программа, скомпилированная на Dev C++, время от времени завершается системной ошибкой. При этом выходит окно с предложением послать crash-репорт в MS. Причём, пока не нажать на подтверждение или отмену, программа не выгружается из памяти и не запускается снова, даже под другим именем.

Вопрос. Можно ли как-то подавить это сообщение об ошибке? Так, чтобы программа завершалась без участия пользователя?
PM MAIL WWW   Вверх
andrew_121
Дата 13.6.2009, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Wolf1994, Странное желание smile
Может лучше ошибку исправить?


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
zim22
Дата 13.6.2009, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Wolf1994 @  13.6.2009,  14:11 Найти цитируемый пост)
 Можно ли как-то подавить это сообщение об ошибке? Так, чтобы программа завершалась без участия пользователя?

если бы ваша программа кидала exception, то можно было бы его отлавливать и реагировать как вам угодно. даже если его не отлавливать - была бы вызвана функция terminate(), которая всё-равно завершила бы работу приложения.


--------------------
PM MAIL   Вверх
Wolf1994
Дата 13.6.2009, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: нет
Всего: 29



Может и лучше smile но я не знаю как: она то возникает, то нет, а по крэш-репорту понять что-либо сложно - кажется что-то с памятью... Причём, насколько я знаю, иногда "падают" даже "правильные" программы, стоит только что-то установить или удалить из софта, внешне не имеющее отношения к проблемной программе.

Добавлено через 1 минуту и 47 секунд
zim22, можно подробнее про exception? Его можно повесить на самописную функцию? Или только на функцию C++?
PM MAIL WWW   Вверх
andrew_121
Дата 13.6.2009, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Wolf1994, Код программы есть? Много?
Показывай. Объясни точнее про ошибку.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
zim22
Дата 13.6.2009, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Wolf1994 @  13.6.2009,  14:38 Найти цитируемый пост)
 можно подробнее про exception? Его можно повесить на самописную функцию? Или только на функцию C++?

exception - это механизм С++. но не С. если у вас С++ функция - то можно.
есть 3 основных метода борьбы с ошибками: использовать assert'ы, exeption, коды возврата ошибок.
exception'ы кидаются стандартной библиотекой С++ и вы сами можете построить приложение с иерархией классов exception'ов для того, чтобы повысить отказоустойчивость программы.
**
в вашем случае я думаю более уместно логировать вызовы функций и данные в них в текстовый файл для дальшего анализа.

Это сообщение отредактировал(а) zim22 - 13.6.2009, 14:53


--------------------
PM MAIL   Вверх
Wolf1994
Дата 13.6.2009, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: нет
Всего: 29



andrew_121, 32 Кб. Ошибка возникает на определённом этапе, но после перезапуска этот этап проходится без ошибок.

Вот подробности об ошибке:
http://www.wolf-ware.ru/x/crash.jpg - скриншот.
http://www.wolf-ware.ru/x/17ff_appcompat.xml - файл для отчёта MS.

Добавлено через 1 минуту и 52 секунды
zim22, спасибо за идею с исключениями.
PM MAIL WWW   Вверх
mes
Дата 13.6.2009, 16:50 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Wolf1994 @  13.6.2009,  13:38 Найти цитируемый пост)
. Причём, насколько я знаю, иногда "падают" даже "правильные" программы, стоит только что-то установить или удалить из софта, внешне не имеющее отношения к проблемной программе.

Нет, нет и еще раз нет. Падают те "правильные" программы, которые только с виду правильные, но на деле имеют ошибки.



--------------------
PM MAIL WWW   Вверх
andrew_121
Дата 13.6.2009, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Цитата(mes @  13.6.2009,  16:50 Найти цитируемый пост)
Нет, нет и еще раз нет. Падают те "правильные" программы, которые только с виду правильные, но на деле имеют ошибки.

 smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
jonie
Дата 14.6.2009, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



нужно снимать дамп памяти и пихать его в windbg для анализа. Прогу перекомпилить в дебаг режиме. Дамп снимать с помощью ntsd. Нужен только FullDump. 

Инфа:
http://www.debuginfo.com/articles/ntsdwatson.html
http://www.debuginfo.com/articles/debugstartup.html
и вообще сайт www.debuginfo.com

а также:
http://www.codeproject.com/KB/debug/windbg_part1.aspx
http://msdn2.microsoft.com/



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0639 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.