Остановка на ошибке

Оценить
(0 голоса)

Не все, что вы обнаруживаете в режиме отладки, является ошибкой, которая приведет к прерыванию кода. Часто проблемы возникают просто потому, что вы проверяете поведение приложения. Например, элемент управления может находиться не на месте, порядок вкла­док неправильный и т. д. Для проверки таких вещей вам по-прежнему приходится полагать­ся на свои глаза. Инструменты отладки Visual Studio помогают вам работать с остановами вашего кода.

При возникновении в вашем коде необработанных исключительных состояний отладчик по умолчанию прервет выполнение и перейдет в интегрированную среду, где ошибочный код будет выделен. Ключевыми в этом предложении являются слова "необработанные исключе­ния".Описание: image218

Они обозначают те места вашего кода, где у вас нет блоков try/catch для обработки исключения. Обычно это хорошая настройка по умолчанию для работы. Однако часто быва­ет нужно видеть и обработанные исключения тоже.

К счастью, можно настроить те ошибки, которые приводят к останову работы в интегриро­ванной среде. Например, вы можете обработать определенное исключение в вашем коде и не желать, чтобы вас выбрасывало в интегрированную среду каждый раз, когда оно проис­ходит. Вместо этого вы хотите получать уведомления о действительно исключительных со­стояниях. Диалоговое окно Exceptions позволяет вам управлять набором тех исключений, которые вас интересуют. Доступ к этому диалоговому окну можно получить через меню Debug | Exceptions (или по нажатию комбинации клавиш<Си*1>+<0>, а затем <Е> в языке C# или <Ctrl>+<Alt>+<E> в языке VB). На рис. 10.5 показано это диалоговое окно.

В диалоговом окне Exceptions исключения для облегчения доступа сведены в категории по пространствам имен (есть также и функция поиска Find). Главный интерес здесь представ­ляют два столбца флажков: один для Thrown (Сгенерированные), а другой для User- unhandled (Пользовательские необработанные). Обратите внимание, что по умолчанию установка для всех исключений .NET Framework— это User-unhandled. Это означает, что отладчик должен прервать выполнение только тогда, когда данное исключение сгенериро­вано, но не обработано вашим кодом.

Добавление флажка Thrown даст указание отладчику прерывать выполнение даже в том случае, когда у вас есть код для обработки данного исключения. Отладчик отреагирует ос­тановом на строке исключения (до вызова вашего обработчика). Если вы хотите использо- 4 вать эту опцию, то следует обдумать ее использование на уровне категорий. Например, вы можете включить Thrown для всей категории Common Language Runtime Exceptions. Бо­лее тонкая настройка конечно также возможна. Однако частое изменение этих настроек приводит к путанице, т. к. отладчик прерывается в разных местах (в зависимости от сгене­рированного исключения).

Рис. 10.5. Определение мест прерываний Visual Studio

Отладка ошибки
Отладка различных процессов
Настройка точки останова
Продолжение отладки
Пошаговое прохождение для поиска ошибки

Добавить комментарий


Защитный код
Обновить

© 2017 www.visualstudios.ru. Все права защищены.