Объектно-ориентированное программирование Инкапсуляция Полиморфизм Библиотека визуальных компонентов Кроссплатформенное программирование Визуальные стили Примеры скриптовАрхитектура приложений баз данных ввод/вывод

Контроль ошибок ввода/вывода

При работе с файлами разработчик обязательно должен предусмотреть обработку возможных ошибок. Практика показывает, что именно операции ввода/вывода вызывают большую часть ошибок, возникающих в приложении из-за воздействия окружающей программной среды.

Контроль за ошибками ввода/вывода зависит от применяемых функций. При использовании доступа через Win32 API все функции возвращают код ошибки Windows, который и нужно проанализировать.

При возникновении ошибок ввода/вывода в функциях, использующих файловые переменные, генерируется исключительная ситуация класса EinOutError. Но так происходит только в том случае, если включен контроль ошибок ввода/вывода. Для этого используются соответствующие директивы компилятора:

Класс EinOutError отличается тем, что у него есть поле ErrorCode. При возникновении этой исключительной ситуации вы можете получить его значение и принять решение. Основные коды имеют такие значения:

При отключенном контроле в случае возникновения ошибки выполнение программы продолжается без остановки. Однако в этом случае устранение возможных последствий ошибки возлагается на разработчика. Для этого применяется функция

function lOResult: Integer;

которая возвращает значение 0 при отсутствии ошибок.

Драйвер устройства (или просто драйвер) -- это программа, обеспечивающая доступ к устройству. Разработка драйверов гораздо более сложная задача, чем написание обычных приложений. Поскольку любой динамически подгружаемый модуль драйвера присоединяется к ядру, малейшая ошибка в драйвере может вызвать крах системы.

Пределы Интегралы Вычисление двойного интеграла Изменить порядок интегрирования Объектно-ориентированное программирование Архитектура приложений баз данных Примеры скриптов Высшая математика