![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Разбираемся с исключениями Delphi: получение настоящего класса и имени исключения из скриптаDelphi , Синтаксис , Ошибки и ИсключенияРаботая с Delphi и скриптами, разработчики могут столкнуться с ситуацией, когда при вызове функции, написанной на Delphi, из скрипта, возникают исключения. В таком случае на стороне скрипта получается обобщенное исключение ПроблемаКогда из скрипта вызывается функция на Delphi, которая может сгенерировать исключение, на стороне скрипта мы получаем только обобщенное исключение
Этот код всегда будет выводить "EDelphi", независимо от того, какое исключение произошло на стороне Delphi. РешениеНепосредственно получить тип класса исключения на стороне скрипта напрямую не получится, так как обработчик исключений DWScript не хранит эту информацию, и тип Delphi не имеет смысла внутри скрипта. Однако, можно получить имя класса исключения, используя свойство
При выполнении этого кода будет выведено сообщение с именем класса исключения, например:
Как я нашел ответАвтор подтвержденного ответа нашел решение, изучив исходный код DWScript. Он обнаружил, что при преобразовании исключения Delphi в исключение скрипта ЗаключениеИспользуя свойство В статье рассматривается проблема и решение получения информации о реальном классе исключения, возникшего на стороне Delphi, при его вызове из скрипта, и предоставляется способ извлечения имени класса исключения через свойство `ExceptionClass` Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Ошибки и Исключения ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |