При использовании lOResult нужно отключать встроенный обработчик ошибок
ввода-вывода. В этом деле поможет директива ($!-}. Соответственно, после вызова
lOResult встроенный обработчик ошибок неплохо бы включать. Для этого
существует директива {$! + }.
Ошибки при работе с файлом обрабатываются следующим образом.
Листинг 8.22
procedure TForml.ButtonlCI ick(Sender: TObject);
var
F:File;
begin
AssignFi le(F,ourfile.dat);
{$(-}
Reset(F);
{$!+}
if lOResultoO then
begin
ShowMessage(VBbi и ах, файл открыть не удалось. ..);
Exit;
end;
{здесь находится блок работы с файлом}
C-loseFile(F);
end;
Соответственно, таким же образом обрабатывать события можно не только при открытии
файла (Rewrite, Reset), но также при его чтении и записи.