Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.13;
Скачать: CL | DM;

Вниз

try ... finally   Найти похожие ветки 

 
Урри   (2003-02-04 12:53) [0]

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

try
StatementList1;
finally
StatementList2;
end;

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


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

Нет


 
Anatoly Podgoretsky ©   (2003-02-04 13:03) [2]

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


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

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

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


 
Anatoly Podgoretsky ©   (2003-02-04 13:49) [4]

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


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

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


 
Digitman ©   (2003-02-04 14:12) [6]

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


 
Anatoly Podgoretsky ©   (2003-02-04 14:17) [7]

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


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

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



Страницы: 1 вся ветка

Текущий архив: 2003.02.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
7-38578
fc
2002-12-09 22:10
2003.02.13
клавиатура


7-38603
FOX(c)
2002-12-11 23:46
2003.02.13
ПРОГРАМНО ОТКЛЮЧИТЬ ФЛОП-ДИСКОВОД


3-38114
Ag2002
2003-01-27 17:18
2003.02.13
Создание БД в ИБ


3-38042
badaxe
2003-01-29 12:33
2003.02.13
Не работает update


7-38587
Андрей Ваганов
2002-12-10 15:40
2003.02.13
Как убрать прогу с таскбара?