Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 1 марта!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Возможности языков семейства Си по истине безграничны, однако, в этой свободе кроются и недостатки: всегда нужно программисту держать ухо востро и контроллировать "переполнение буфера", чтобы потом программа не вылетала в "синий экран" на массе разнообразных версий Windows и железа у пользователей. Те же крэкеры и реверсеры специально ищут в коде программ на Си уязвимости, куда можно подсадить любой вирусный код, об этом более подробно автор рассказывал в своём видеокурсе здесь. Я там многое узнал и теперь мой код стал значительно более безопасный.

dosexterr

 
 Функция            Получает дополнительный код ошибки DOS.
 
 
 
 Cинтаксис          #include <dos.h>
 
                    int dosexterr(struct DOSERROR *eblkp);
 
 
 
 Файл, содержащий   dos.h
 
 прототип
 
 
 
 Описание           Данная функция   заполняет   структуру  DOSERROR  с
 
                    адресным указателем eblkp  расширенной  информацией
 
                    об  ошибке,  получаемой  при  неудачном  завершении
 
                    системного   вызова   DOS.    Структура    DOSERROR
 
                    определена следующим образом:
 
 
 
                    struct  DOSERROR {
 
                       int exterror;     /* дополнительная ошибка */
 
                       char class;       /* класс ошибки */
 
                       char action;      /* действия */
 
                       char locus;       /* местонахождение ошибки */
 
                    };
 
 
 
                    Значения данная структура получает с помощью вызова
 
                    функции DOS 0x59.  Значение exterror,  равное нулю,
 
                    обозначает, что предшествующий вызов системы MS DOS
 
                    завершился без ошибки.
 
 
 
 Возвращаемое       Функция dosexterr возвращает значение переменной
 
 значение           exterror.
 
 
 
 Переносимость      Функция уникальна для системы MS DOS версии 3.X,
 
                    поэтому не может быть использована в  более  ранних
 
                    версиях системы DOS.
 
 
 
 Пример:
 
 
 
 #include<stdio.h>
 
 #include<dos.h>
 
 
 
 int main(void)
 
 {
 
    FILE *fp;
 
    struct DOSERROR info;
 
    fp = fopen("perror.dat","r");
 
    if(!fp) perror("Не могу открыть файл для чтения");
 
    dosexterror(&info);
 
    printf("Дополнительная информация об ошибке DOS:\n");
 
    printf("  дополнительная ошибка:    %d\n",info.exterror);
 
    printf("           класс ошибки:    %d\n",info.class);
 
    printf("               действия:    %d\n",info.action);
 
    printf(" местонахождение ошибки:    %d\n",info.locus);
 
    return 0;
 
 }

<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS