Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Unhandled exception 
:(
    Опции темы
lightforever
Дата 10.5.2011, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Использую Microsoft visual studio 2008. Сейчас столкнулся со следущей проблемой:

1) Я компилирую приложение в Debug режиме

2) Происходит unhandled exception при работе моего приложения( не сразу, через мин 20), без указания
причины ошибки, просто написано, что unhandled exception в Имя_моего_проекта.vsln и больше ничего

3) *.pdb файл в папке с exe присутствует.

4) Никакого указания на строку, где произошла ошибка нет( если не считать ассемблер-строку)

Помогите разобраться пожалуйста
PM MAIL   Вверх
lightforever
Дата 10.5.2011, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Это ошибка win32. Я юзаю в своём проекте win32 функции, поэтому скорее всего дело в том, что это неуправляемый код. Что делать в таком случае?
PM MAIL   Вверх
jonie
Дата 10.5.2011, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



у вас .NET4 ? Тогда будьте вкурсе что ошибки типа AccessViolation более не ловятся в нём даже catch{} конструкцией.
Для того чтобы включить режим совместимости с .NET 3.5 надо в app.config прописать:
Код

<configuration>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>
но вообще это нерекомендуемо (подробнее об настройке: http://www.marklio.com/marklio/PermaLink,g...900e451f9.aspx)

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

А для того чтобы понять в чем конкретно ошибка надо взять winDBG, запуститься с SOS.DLL и юзать нечто вроде !VerifyHeap -v совместно с !ListNearObj наверно...


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
lightforever
Дата 10.5.2011, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



jonie , нет у меня 3.5. 

А насчёт: "надо взять winDBG, запуститься с SOS.DLL и юзать нечто вроде !VerifyHeap -v совместно с !ListNearObj". Интересно. Надо попробовать поразбираться

Это сообщение отредактировал(а) lightforever - 10.5.2011, 17:42
PM MAIL   Вверх
lightforever
Дата 10.5.2011, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А неподскажите какие ошибки не ловятся в try , catch в Netframework 3.5? Ато не найду
PM MAIL   Вверх
jonie
Дата 10.5.2011, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



lightforever, не ошибки, а языковые исключения cath-ем ловятся только.... другой вопрос что CLR 3.5 преобразует AccessViolation (это native исключения, они, кстати, не ловятся и в Сях например) в языковые...
Но, некоторые эта штука не словит. В частности ошибки компиляции байткода кода, например: MethodNotFoundException (тоже ошибка компиляции) или вообще косячный код.

Насчет Native ошибок  фих его знает.. можно, наверно, глянуть в сорцы CLR на этот счет (но они не все открыты) ...

и еще: то что у вас 3.5 вовсе не значит что программа работает под CLR 3.5 .. запустите clrver -all чтобы узнать что реально используется.

Это сообщение отредактировал(а) jonie - 10.5.2011, 21:35


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




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


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

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