Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 5 649

/ вопрос решён /

Здравствуйте, уважаемые эксперты!
Delphi 7.
1. Если запустить RangeCheck.exe, получим:
Range check A, i=10
For exit press Enter
2. Если же выполнить эту программку в среде Delphi,
выскакивает окно "Debuggier Exception Notification" и
выполнение программы останавливается.
Что надо сделать, чтобы в этом случае программа выполнялась
до конца (так же, как и в случае 1)?

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Приложение:
  1. program RangeCheck;
  2. {$APPTYPE CONSOLE}
  3. {$RANGECHECKS ON}
  4. uses SysUtils;
  5. var A: array of byte;
  6. i: byte;
  7. begin
  8. SetLength(A, 10);
  9. for i := 0 to 10 do
  10. try
  11. A[i] := i;
  12. except
  13. on ERangeError do
  14. begin
  15. Writeln('Range check A, i = ', i);
  16. BREAK;
  17. end;
  18. end;
  19. A := nil;
  20. Writeln('For exit press Enter');
  21. Readln;
  22. end.
  23.  


Dod Вопрос решён, но можно продолжить его обсуждение в мини-форуме

Вопрос задал: Dod (статус: Посетитель)
Вопрос отправлен: 23 сентября 2011, 09:54
Состояние вопроса: решён, ответов: 1.

Ответ #1. Отвечает эксперт: min@y™

Всё верно, так и должно быть, если прога запущена под отладчиком, на то он и отладчик, чтобы показывать, что произошло исключение, причём до выполнения блока except...end. Эту фичу можно отключить в диалоге Tools-->Debugger Options. Ты не указал свою версию Delphi, поэтому выкладываю скрин от delphi 7.

Отключить надо чекбокс "Stop on Delphi Exceptions".

Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 23 сентября 2011, 10:25
Оценка за ответ: 5


Мини-форум вопроса

Всего сообщений: 0.

23 сентября 2011, 10:35: Статус вопроса изменён на решённый (изменил автор вопроса — Dod)

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:53
Выполнено за 0.02 сек.