Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MS VS 8, глюки дебага или фиг знает чего.... 
V
    Опции темы
FelikZ
Дата 11.7.2007, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Старый Маразматик
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 1.12.2006
Где: Vault 13

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



Код программы большой, поэтому выложить не смогу...
Запускаю в визуал студии через F5 - программа работает как надо, запускаю через Ctrl+F5 летит к бабушке в Израиль...
Был уже когда-то такой глюк поборол методом комментирования всего и вся, но может кто подскажет как это можно вылечить более цивилизованным путем?



Это сообщение отредактировал(а) FelikZ - 11.7.2007, 14:39


--------------------
user posted image
PM WWW ICQ Skype   Вверх
GGoga
Дата 11.7.2007, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(FelikZ @ 11.7.2007,  14:31)
Код программы большой, поэтому выложить не смогу...
Запускаю в визуал студии через F5 - программа работает как надо, запускаю через Ctrl+F5 летит к бабушке в Израиль...
Был уже когда-то такой глюк поборол методом комментирования всего и вся, но может кто подскажет как это можно вылечить более цивилизованным путем?

Глюк дебага в Студие - это знакомый случай. У меня, например, дебаг в 75% случаев вообще не запускается! Данную проблему решаю переустановкой студии... Знаю это не выход, но для меня 10 минутная переустановка гораздо выгоднее, чем неограниченно затраченное время на поиск и устранение ошибки (или поиск необходимого пункта в большем количестве настроек). Подобного рода вопросы я задавал на многих форумах, но так конкретного ответа и не получил... :(

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

А вообще было бы и самому интересно найти метод решения проблемы работы дебага в Студие.
PM MAIL ICQ Skype   Вверх
JUmPER
Дата 11.7.2007, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



в vc6 такая же фигня есть
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной
PM MAIL   Вверх
FelikZ
Дата 11.7.2007, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Старый Маразматик
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 1.12.2006
Где: Vault 13

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



Цитата(GGoga @  11.7.2007,  15:33 Найти цитируемый пост)
А вообще было бы и самому интересно найти метод решения проблемы работы дебага в Студие.

Таки нашел! Метод коментирования не помог, зато метод мессадж боксов еще как помогает! Значит рассказываю. Берем и расставляем 5 пронумерованых мессадж боксов где-то в той зоне где вам кажется, что там может быть ошибка. Запусткаем Ctrl+F5. Вылетает 1, 2, 3... ОПА! фатал еррор! заходим в код убераем два последних и наш поиск глюка уменьшается в довое! Ну и повторять процедуру пока не будет что-то вроде:

Код

//MBOK - дефайн MessageBox(NULL, Message, _T(""), MB_OK|MB_ICONINFORMATION|MB_TOPMOST) 

.....

MBOK("MB HERE?-3"); //Вызвался
MyClass mc = new MyClass(); // значит глюк сдесь! ;)
MBOK("MB HERE?-4"); //Не вызвался



Мне помогло  smile 
Всем спс, тема closed.


--------------------
user posted image
PM WWW ICQ Skype   Вверх
Earnest
Дата 11.7.2007, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Ну, я бы сказала, что это не глюк среды, а глюк в программе: в среде работает, вне среды - нет. Особенно приятно когда такое дело с релизом. 
Метод расстановки контрольных точек для локализации ошибки - вполне разумен. Только мессаж-бокс не лучший вариант, он все таки нарушает поток управления: вешает свой модальный цикл и прочая. Т.е. иногда может помешать обнаружить ошибку. Я использую трассировочные сообщения: в дебаге просто TRACE, в релизе - OutputDebugString. Пишем 1, 2, 3 или можно переменные какие распечатать...

Предваряя вопрос, как это дело видеть, если запускаем вне среды.
На это есть чудесная утилита DebugView, взятая здесь. Просто запускаем ее, потом свой процесс и смотрим, что вывелось, что нет. 


--------------------
...
PM   Вверх
Nastya
Дата 11.7.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 1
Всего: 44



Кстате, никто не забрещает создавть Release + *.pdb с отладочной информацией - тогда все можно отлаживать как в дебаге smile


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
FelikZ
Дата 11.7.2007, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Старый Маразматик
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 1.12.2006
Где: Vault 13

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



Цитата(Nastya @  11.7.2007,  18:27 Найти цитируемый пост)
тогда все можно отлаживать как в дебаге

дело в том, что моя ошибка ваще какаето глупая, когда вылетает окошко студии, что в приложении обнаружена ошибка, жмем дебаг и в отгрывшийся студии показывается место где ошибка физически быть неможет....


--------------------
user posted image
PM WWW ICQ Skype   Вверх
Nastya
Дата 12.7.2007, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 1
Всего: 44



FelikZ, не берусь судить не видя ситуации, но такое может быть, когда кто-то порушил стек или кучу. 


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
FelikZ
Дата 12.7.2007, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Старый Маразматик
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 1.12.2006
Где: Vault 13

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



Nastya, вылетал оператор "new".... фиг знает почему... проверил конструктор класса, который создавал, туда даже не доходило... Ну вобщем перенес этот new и все стало на места smile


--------------------
user posted image
PM WWW ICQ Skype   Вверх
dumb
Дата 12.7.2007, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

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



значит между тем местом, где этот new находился до переноса, и тем, где он нах-ся сейчас(хотя это не стопудово - может где-то раньше), есть что-то, что портит кучу. типа char *a = new char[10]; memset(a,0,100);
PM MAIL   Вверх
FelikZ
Дата 12.7.2007, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Старый Маразматик
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 1.12.2006
Где: Vault 13

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



dumb, есть такое:

Код

MSG msg;
.....
SecureZeroMemory(&msg,sizeof(msg));


это может быть оно? больше ничего с памятью там нету...


--------------------
user posted image
PM WWW ICQ Skype   Вверх
JUmPER
Дата 12.7.2007, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



онаж затирает пару указателей нулями.
если ж потом по ним обращаться или делать delete...
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной
PM MAIL   Вверх
bilbobagginz
Дата 12.7.2007, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

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



спасибо Earnest, и я теперь бадяг вью.

smile


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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