Странное поведение VS при возникновении Exception
От: BUTEK  
Дата: 15.08.11 09:36
Оценка:
Ситуация следующая, в режиме отладки допустим возникает исключительная ситуация. Отладчик не останавливает отладку он просто вылетает из этого режима(как будто нажал Stop Debugging). Ставлю в настройках(Debug -> Exceptions) принудительно останавливаться на всех исключениях и тогда все работает. Еще заметил странную вещь что не на всех исключительных ситуациях такое поведение, некоторые исключительные ситуации отрабатываются нормально.
(Видео 9 Мб)
http://dl.dropbox.com/u/15741116/Serg.avi
Re: Странное поведение VS при возникновении Exception
От: Kalina9001  
Дата: 15.08.11 10:01
Оценка:
Здравствуйте, BUTEK, Вы писали:

BUT>Ситуация следующая, в режиме отладки допустим возникает исключительная ситуация. Отладчик не останавливает отладку он просто вылетает из этого режима(как будто нажал Stop Debugging). Ставлю в настройках(Debug -> Exceptions) принудительно останавливаться на всех исключениях и тогда все работает. Еще заметил странную вещь что не на всех исключительных ситуациях такое поведение, некоторые исключительные ситуации отрабатываются нормально.


Где то выше по стеку обработка Exception с принудительным выходом?
Что то типа
try{
...
}catch{
Application.Exit();
}

Или event AppDomain.CurrentDomain.UnhandledException обрабатывается? Поставь (Debug -> Exceptions) и пройдись по F11 дальше
... << RSDN@Home 1.2.0 alpha 5 rev. 1536>>
Re[2]: Странное поведение VS при возникновении Exception
От: BUTEK  
Дата: 15.08.11 10:10
Оценка:
Здравствуйте, Kalina9001, Вы писали:

K>Здравствуйте, BUTEK, Вы писали:


BUT>>Ситуация следующая, в режиме отладки допустим возникает исключительная ситуация. Отладчик не останавливает отладку он просто вылетает из этого режима(как будто нажал Stop Debugging). Ставлю в настройках(Debug -> Exceptions) принудительно останавливаться на всех исключениях и тогда все работает. Еще заметил странную вещь что не на всех исключительных ситуациях такое поведение, некоторые исключительные ситуации отрабатываются нормально.


K>Где то выше по стеку обработка Exception с принудительным выходом?

K>Что то типа
K>
K>try{
K>...
K>}catch{
K>Application.Exit();
K>}

K>

K>Или event AppDomain.CurrentDomain.UnhandledException обрабатывается? Поставь (Debug -> Exceptions) и пройдись по F11 дальше

Это предположение я сразу проверил, выходит в метод Dispose().
А глобальной обработки исключения я не делал
Re[3]: Странное поведение VS при возникновении Exception
От: Kalina9001  
Дата: 15.08.11 10:52
Оценка:
Здравствуйте, BUTEK, Вы писали:

BUT>Это предположение я сразу проверил, выходит в метод Dispose().

BUT>А глобальной обработки исключения я не делал

После Dispose куда идет?
... << RSDN@Home 1.2.0 alpha 5 rev. 1536>>
Re[4]: Странное поведение VS при возникновении Exception
От: BUTEK  
Дата: 16.08.11 02:23
Оценка:
K>После Dispose куда идет?

Он проходит по всем методам Dispose и завершается отладка

вот часть содержимого окна Output может как то поможет:
A first chance exception of type 'System.Runtime.Serialization.SerializationException' occurred in mscorlib.dll
A first chance exception of type 'System.Reflection.TargetInvocationException' occurred in mscorlib.dll
Step into: Stepping over non-user code 'System.Windows.Forms.ToolStripItem.HandleClick'
Step into: Stepping over non-user code 'System.Windows.Forms.Control.WmMouseUp'
Step into: Stepping over non-user code 'System.Windows.Forms.NativeWindow.DebuggableCallback'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner'
Step into: Stepping over non-user code 'System.ComponentModel.Container.Dispose'
...
Step into: Stepping over non-user code 'System.Windows.Forms.Form.Dispose'
Step into: Stepping over non-user code 'System.ComponentModel.Component.Dispose'
Step into: Stepping over non-user code 'System.Windows.Forms.ApplicationContext.Dispose'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ThreadContext.DisposeThreadWindows'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ThreadContext.Dispose'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner'
Step into: Stepping over non-user code 'System.Windows.Forms.Application.ThreadContext.RunMessageLoop'
Step into: Stepping over non-user code 'Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly'
The thread 'vshost.RunParkingWindow' (0x1390) has exited with code 0 (0x0).
The program '[4116] PDU-01.vshost.exe: Managed (v2.0.50727)' has exited with code -532459699 (0xe0434f4d).
The program '[4116] PDU-01.vshost.exe: Program Trace' has exited with code 0 (0x0).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.