Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Delphi |
![]() ![]() |
Страдалецъ Member Откуда: Мурманск Сообщений: 1438 |
Ситуация весьма странная, имеем XE10.2 и DevExpress 17.2 Загружаю в компонент документ, получаю исключение и код дальше исполняется как будто исключения и нет. Проверяю работу секции исключения через raise Exception - все отрабатывает штатно. Что за мистика? Вот собственно весь код: procedure TForm3.cxButton1Click(Sender: TObject); var i: Integer; NewFileName: String; begin if not OpenDialog1.Execute then Exit; for i := 0 to OpenDialog1.Files.Count - 1 do begin try dxRichEditControl1.LoadDocument(OpenDialog1.Files.Strings[i]); //Тут мы получаем исключение и спокойно дальше выполняем код NewFileName := StringReplace(OpenDialog1.Files.Strings[i], ExtractFileExt(OpenDialog1.Files.Strings[i]), '.docx', []); dxRichEditControl1.SaveDocument(NewFileName, TdxRichEditDocumentFormat.OpenXml); DeleteFile(OpenDialog1.Files.Strings[i]); except ShowMessage('Не открылось, печально...'); end; end; end; |
2 дек 19, 15:14 [22030402] Ответить | Цитировать Сообщить модератору |
Vlad F Member Откуда: Сообщений: 1335 |
Страдалецъ, Возможно, оно перехватывается где-то внутри используемых методов, ближе к месту возникновения. |
2 дек 19, 15:19 [22030410] Ответить | Цитировать Сообщить модератору |
Страдалецъ Member Откуда: Мурманск Сообщений: 1438 |
Но получаю то я исключение именно при загрузке. Следовательно, оно ко мне приходит в код именно в эту строчку, обработанное исключение не должно всплывать далее, если только его еще раз не возбудить, но оно все равно остается исключением и блок должен отработать, а тут такого нет. |
2 дек 19, 15:26 [22030420] Ответить | Цитировать Сообщить модератору |
Vlad F Member Откуда: Сообщений: 1335 |
Значит таки не приходит, перехватывается раньше, трассируй исходники методов загрузки. |
2 дек 19, 15:38 [22030429] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 4354 |
Сообщение было отредактировано: 2 дек 19, 16:12 |
||||
2 дек 19, 16:12 [22030466] Ответить | Цитировать Сообщить модератору |
_Vasilisk_ Member Откуда: Украина, Харьков Сообщений: 12436 |
|
||||
2 дек 19, 17:40 [22030557] Ответить | Цитировать Сообщить модератору |
alekcvp Member Откуда: Сообщений: 2664 |
Код дальше исполняется или цикл продолжает отрабатывать?.. |
||||
2 дек 19, 20:21 [22030730] Ответить | Цитировать Сообщить модератору |
Страдалецъ Member Откуда: Мурманск Сообщений: 1438 |
Да, действительно это исключение где-то в компоненте возникает, но вот почему я его не могу перехватить и обработать мне непонятно. В принципе на конечный, исполняемый файл оно не влияет, видно только при отладке, приходится просто игнорить это исключение и проверять результат загрузки файла иначе. |
4 дек 19, 00:28 [22031676] Ответить | Цитировать Сообщить модератору |
DimaBr Member Откуда: Сообщений: 11947 |
А как вы определили что оно там возникает ? |
||||
4 дек 19, 01:50 [22031702] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 4354 |
Впрочем, я ТСу об этом писал 2 дня назад, но он ушел в себя. |
||||||||
4 дек 19, 02:39 [22031711] Ответить | Цитировать Сообщить модератору |
Vlad F Member Откуда: Сообщений: 1335 |
Я тебе написал почему, причем два раза. Потому что перехватывается и не перевозбуждается где-то в исходных кодах. Причем среда в таких случаях о нем все равно сигнализирует уже по факту исходного возбуждения. |
||||
4 дек 19, 10:56 [22031850] Ответить | Цитировать Сообщить модератору |
ёёёёё Member Откуда: Сообщений: 2017 |
А в вижуалстудии, если иксцепшн случился внутри try, при отладке мозг не выносится, если только ты сам не поставил брекпоинт в catch секции. И логично и удобно. |
5 дек 19, 13:29 [22033111] Ответить | Цитировать Сообщить модератору |
Vlad F Member Откуда: Сообщений: 1335 |
ёёёёё, В BDS это тоже отключается, если уж на то пошло. |
5 дек 19, 13:55 [22033148] Ответить | Цитировать Сообщить модератору |
Мимопроходящий Member Откуда: бурятский тундрюк, эсквайр Сообщений: 31835 |
05.12.2019 13:55, Vlad F пишет: > В BDS это тоже отключается, если уж на то пошло. конкретно речь о попадании в затраенный блок? Posted via ActualForum NNTP Server 1.5 |
5 дек 19, 13:57 [22033152] Ответить | Цитировать Сообщить модератору |
ёёёёё Member Откуда: Сообщений: 2017 |
Мимопроходящий, нет, конечно. Просто "за свою корову обидно". |
5 дек 19, 14:02 [22033163] Ответить | Цитировать Сообщить модератору |
Vlad F Member Откуда: Сообщений: 1335 |
Мимопроходящий, Нет, имелось. Break on Exception в принципе.)) |
5 дек 19, 14:29 [22033196] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 4354 |
|
||||
5 дек 19, 15:05 [22033246] Ответить | Цитировать Сообщить модератору |
Мимопроходящий Member Откуда: бурятский тундрюк, эсквайр Сообщений: 31835 |
05.12.2019 15:05, YuRock пишет: > А в делфи это настраивается она глабальная - хукать/нехукать Posted via ActualForum NNTP Server 1.5 |
5 дек 19, 15:09 [22033253] Ответить | Цитировать Сообщить модератору |
vavan Member Откуда: Казань Сообщений: 3581 |
|
||||
5 дек 19, 16:29 [22033347] Ответить | Цитировать Сообщить модератору |
ёёёёё Member Откуда: Сообщений: 2017 |
"Но любим мы её не только за это" - (с). |
||||||||
5 дек 19, 16:33 [22033354] Ответить | Цитировать Сообщить модератору |
Все форумы / Delphi | ![]() |