Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

try ... finally [D5, Win2k]


Урри ©   (2003-02-04 12:53:00) 

Мастера, имеется:

try
StatementList1;
finally
StatementList2;
end;

Подскажите, пожалуйста, возможно ли определить в секции finally было ли исключение в StatementList1 или же я попал туда "нормальным" путем?


Урри   (2003-02-05 08:47:00) [1]

Разобрался, всем спасибо за помощь.


Anatoly Podgoretsky   (2003-02-04 14:17:00) [2]

Тоже хорошо и без лишней обработки исключения.


Digitman   (2003-02-04 14:12:00) [3]

try
a:= 1;
StatementList1;
a:= 2;
finally
if a = 1 then
StatementList2 // exception in StatementList1;
else
StatementList3;// no exceptions in StatementList1;
end;


AGGRESSOR   (2003-02-04 13:55:00) [4]

Да, это не всегда приемлимо, и зависит от ситуации, но частенько помагает. Например, завершение работы в винде. Для 2000 нужны привилегии, а потом ExitWindowsEx, а 98 их не понимает. Вот и делаю
try
set privileges...
ExitW...
except
ExitW...


Anatoly Podgoretsky   (2003-02-04 13:49:00) [5]

Вот таких советов не надо.


AGGRESSOR   (2003-02-04 13:39:00) [6]

Правильно говорят, используй except, что-то вроде этого для твоего случая:

try
StatementList1;
StatementList2;
except
MsgBox("Error!");
StatementList2;
end;


Anatoly Podgoretsky   (2003-02-04 13:03:00) [7]

Почему бы тогда не создать блок try except end?


Игорь Шевченко   (2003-02-04 12:54:00) [8]

Нет


Наверх

Титульная страница Поиск, карта сайта Написать письмо