Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Не желает отрабатывать try execept. В чем может быть дело?  [new]
Страдалецъ
Member

Откуда: Мурманск
Сообщений: 1399
Ситуация весьма странная, имеем 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]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Vlad F
Member

Откуда:
Сообщений: 1048
Страдалецъ,

Возможно, оно перехватывается где-то внутри используемых методов, ближе к месту возникновения.
2 дек 19, 15:19    [22030410]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Страдалецъ
Member

Откуда: Мурманск
Сообщений: 1399
Но получаю то я исключение именно при загрузке. Следовательно, оно ко мне приходит в код именно в эту строчку, обработанное исключение не должно всплывать далее, если только его еще раз не возбудить, но оно все равно остается исключением и блок должен отработать, а тут такого нет.
2 дек 19, 15:26    [22030420]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Vlad F
Member

Откуда:
Сообщений: 1048
Значит таки не приходит, перехватывается раньше, трассируй исходники методов загрузки.
2 дек 19, 15:38    [22030429]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 4074
Страдалецъ
Но получаю то я исключение именно при загрузке.
Даже если отключить галку "Debugger options - Stop on Delphi exceptions"?

Сообщение было отредактировано: 2 дек 19, 16:12
2 дек 19, 16:12    [22030466]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 11336
Страдалецъ
Проверяю работу секции исключения через raise Exception - все отрабатывает штатно
Как именно проверяете и что отрабатывает?
2 дек 19, 17:40    [22030557]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
alekcvp
Member

Откуда:
Сообщений: 1699
Страдалецъ
Ситуация весьма странная, имеем XE10.2 и DevExpress 17.2
Загружаю в компонент документ, получаю исключение и код дальше исполняется как будто исключения и нет.

Код дальше исполняется или цикл продолжает отрабатывать?..
2 дек 19, 20:21    [22030730]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Страдалецъ
Member

Откуда: Мурманск
Сообщений: 1399
Да, действительно это исключение где-то в компоненте возникает, но вот почему я его не могу перехватить и обработать мне непонятно. В принципе на конечный, исполняемый файл оно не влияет, видно только при отладке, приходится просто игнорить это исключение и проверять результат загрузки файла иначе.
4 дек 19, 00:28    [22031676]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
DimaBr
Member

Откуда:
Сообщений: 11361
Страдалецъ
Да, действительно это исключение где-то в компоненте возникает.

А как вы определили что оно там возникает ?
4 дек 19, 01:50    [22031702]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 4074
DimaBr
Страдалецъ
Да, действительно это исключение где-то в компоненте возникает.

А как вы определили что оно там возникает ?
Отладчик показывает даже обработанные исключения, если это не отключить, так и видит.
Впрочем, я ТСу об этом писал 2 дня назад, но он ушел в себя.
4 дек 19, 02:39    [22031711]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Vlad F
Member

Откуда:
Сообщений: 1048
Страдалецъ
Да, действительно это исключение где-то в компоненте возникает, но вот почему я его не могу перехватить и обработать мне непонятно. В принципе на конечный, исполняемый файл оно не влияет, видно только при отладке, приходится просто игнорить это исключение и проверять результат загрузки файла иначе.

Я тебе написал почему, причем два раза. Потому что перехватывается и не перевозбуждается где-то в исходных кодах. Причем среда в таких случаях о нем все равно сигнализирует уже по факту исходного возбуждения.
4 дек 19, 10:56    [22031850]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
ёёёёё
Member

Откуда:
Сообщений: 1560
А в вижуалстудии, если иксцепшн случился внутри try, при отладке мозг не выносится, если только ты сам не поставил брекпоинт в catch секции. И логично и удобно.
5 дек 19, 13:29    [22033111]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Vlad F
Member

Откуда:
Сообщений: 1048
ёёёёё,

В BDS это тоже отключается, если уж на то пошло.
5 дек 19, 13:55    [22033148]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 30789

05.12.2019 13:55, Vlad F пишет:
> В BDS это тоже отключается, если уж на то пошло.

конкретно речь о попадании в затраенный блок?

Posted via ActualForum NNTP Server 1.5

5 дек 19, 13:57    [22033152]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
ёёёёё
Member

Откуда:
Сообщений: 1560
Мимопроходящий,

нет, конечно. Просто "за свою корову обидно".
5 дек 19, 14:02    [22033163]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Vlad F
Member

Откуда:
Сообщений: 1048
Мимопроходящий,

Нет, имелось. Break on Exception в принципе.))
5 дек 19, 14:29    [22033196]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 4074
ёёёёё
А в вижуалстудии, если иксцепшн случился внутри try, при отладке мозг не выносится, если только ты сам не поставил брекпоинт в catch секции. И логично и удобно.
А в делфи это настраивается, и я регулярно меняю эту настройку (включаю/отключаю), в зависимости от необходимости в данный момент.
5 дек 19, 15:05    [22033246]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 30789

05.12.2019 15:05, YuRock пишет:
> А в делфи это настраивается

она глабальная - хукать/нехукать

Posted via ActualForum NNTP Server 1.5

5 дек 19, 15:09    [22033253]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
vavan
Member

Откуда: Казань
Сообщений: 3424
YuRock
А в делфи это настраивается
и в vs разумеется тоже
5 дек 19, 16:29    [22033347]     Ответить | Цитировать Сообщить модератору
 Re: Не желает отрабатывать try execept. В чем может быть дело?  [new]
ёёёёё
Member

Откуда:
Сообщений: 1560
vavan
YuRock
А в делфи это настраивается
и в vs разумеется тоже

"Но любим мы её не только за это" - (с).
5 дек 19, 16:33    [22033354]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить