Возможно следует отказаться от директив try, finally, except, raise вообще, либо в пользу обработки ошибок на более "высоком уровне", например за счет переопределения специальных методов класса (я пока использую термин класс, но не обязательно он сохранится :-) или использония других техник на уровне класса.
Можно так:
- Код: Выделить всё
type
MyObject = class
function MyMethod: Integer;
function __exception__(error: Exception);
end;
Или так:
- Код: Выделить всё
type
MyObject = class
function MyMethod: Integer; except MyExceptionHandler;
end;
function MyObject.MyExceptionHandler(error: Exception): Integer;
begin
end;
Или так:
- Код: Выделить всё
type
MyObject = class
function MyMethod: Integer;
end;
function MyObject.MyMethod: Integer;
begin
...
except
...
finally
...
end;
Что думаете?
..bw