Обработка ошибок времени выполнения

Инструкция Print

Вместо инструкции Print в окне отладки можно использовать вопросительный знак (?), как это было в старых версиях Basic (см. рис. 14.3). В окне отладки сохраняются последние 200 строк, которые можно редактировать или выполнять повторно.

Окно отладки можно использовать и по-другому. В этом случае, используя объект Debug и его метод Print, сообщения окну посылают из программного кода. Например, на рис. 14.3 можно увидеть результат работы находящейся в программном коде инструкции

Debug.Print "Число 2 = "; lblЧисло2.Caption

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

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

При обнаружении такой ошибки VB выводит соответствующее сообщение и приостанавливает выполнение программы.

Если приложение было запущено из среды разработки, то сущест­вует возможность переключиться в режим отладки с помощью кнопкиDebug либо в режим проектирования с помощью кнопки End.Среда разработки относительно "мягко" реагирует на ошибки периода выполнения.

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

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

Обработка ожидаемых ошибок времени выполнения производится в три этапа:

• перехват ошибки;

• проверка и устранение ошибки;

• продолжение выполнения программы.