Системное программное обеспечение персональных ЭВМ


14.2. Расширенная информация об ошибке.



14.2. Расширенная информация об ошибке.

Начиная с DOS 2.0, те функции DOS, при выполнении которых могут возникать ошибки, индицируют наличие ошибки установкой флага CY, при этом регистр AX содержит код ошибки. Следующие коды ошибок могут возвращаться в регистре AX: 1-ошибка номера функции DOS10-ошибка в окружении

2-файл не найден11-ошибка формата

3-путь не найден12-ошибка кода доступа

4-слишком много открытых файлов13-ошибка даты

5-доступ отвергнут14-(не используется)

6-ошибка дескриптора файла15-задан неверный диск

7-ошибка в MCB16-удаление текущего оглавления

8-нехватка памяти17-не то же самое устройство

9-ошибка адреса блока памяти18-больше нет искомых файлов

Начиная с версии DOS 3.0 имеется функция 0x59, выдающая расширенную информацию об ошибке. При обращении к этой функции регистр BX должен содержать номер версии DOS (0 - для версии 3). На выходе функции регистр AX содержит расширенный код ошибки, BH - класс ошибки, BL - код предполагаемых действий, CH - локализацию ошибки.

Расширенные коды ошибок:

19 - 36-соответствуют кодам 0 - 17, передаваемым обработчику критической ошибки в регистре DI;
36 - 49-зарезервировано;
50 - 60-ошибки, связанные с работой в сети;
61 - 63-ошибки спуллинга печати;
55 - 72-ошибки, связанные с работой в сети;
73 - 79-зарезервировано;
80-файл уже существует;
81-зарезервировано;
82-невозможно создать элемент каталога;
83-сбой при обработке прерывания по критической ошибке;
84-слишком много перенаправлений;
85-повторяющееся перенаправление;
86-неправильный пароль;
87-неправильный параметр;
88-ошибка в данных сети.

Классы ошибок:

1-нехватка ресурса (памяти, описателей файлов и т.п.);
2-временная ситуация;
3-превышение пользователем своих полномочий;
4-внутренняя ошибка DOS;
5-ошибка оборудования;
6-системная ошибка DOS;
7-ошибка применения (некорректный запрос, неверные параметры и т.п.);
8-запрошенный файл или другой объект найден;
9-неверный формат файла, диска и т.п.;
10-файл или другой объект захвачен другим пользователем;
11-ошибка носителя;
12-файл или другой объект уже существует;
13-неивестный класс.
<


- Начало -  - Назад -  - Вперед -