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

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


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

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



Программисты долго мучаются с кодом прогаммы, изучают С++, WinAPI функции, MSDN. Потом пишут банальную систему защиты или навешивают банальный протектор, а крэкеры и реверсеры справляются с такой защитой за 5 минут. В итоге, продажи программы почти нулевые. Чтобы такого не допустить, тут самому надо немного поднабрать опыта отладки, реверсинга, тот же отладчик Ollydbg изучить или дизассемблер IDA Pro. Но где искать по крохам эти знания? Нет, конечно можно годами "методом тыка" разбираться, но куда быстрее видеокурс специальный посмотреть. Вот тут он есть: ссылка. Автор курса с большим опытом и объясняет понятно, я из этого курса много узнал про то как работает компьютер, процессор, про инструменты специальные и как с ними работать. Мои коллеги программисты на работе ничего такого и не знают, теперь я им нос утру.

raise

 
 Функция            Посылает программный сигнал выполняемой программе.
 
 
 
 Синтаксис          #include<signal.h>
 
                    int raise(int sig);
 
 
 
 Файл, содержащий   signal.h
 
 прототип
 
 
 
 Описание           raise посылает   сигнал   sig   программе.    Если
 
                    программа  загрузила  процедуру обработки сигнала,
 
                    для сигнала sig,  то запускается данная процедура.
 
                    Если  процедуры обработки для данного сигнала нет,
 
                    то производятся действия, определенные для данного
 
                    сигнала по умолчанию.
 
 
 
                    Имеются следующие типы  сигналов,  определенные  в
 
                    файле signal.h:
 
 
 
                    --------------------------------------------------
 
                    Сигнал         Значение
 
                    --------------------------------------------------
 
                    SIGABRT        Ненормальное завершение (*)
 
                    SIGFPE         Неверная операция над числами с
 
                                   плавающей точкой
 
                    SIGILL         Неверная инструкция (#)
 
                    SIGINT         Прерывание по Ctrl_Break.
 
                    SIGSEGV        Неверный доступ к памяти (#)
 
                    SIGTERM        Запрос на завершение программы (*)
 
                    --------------------------------------------------
 
 
 
                    Сигналы помеченные  (*)  не  генерируются  DOS или
 
                    Borland C++,  во время нормальной  работы.  Однако
 
                    они  могут генерироваться с помощью функции raise.
 
                    Сигналя помеченные  (#)  не  могут  генерироваться
 
                    асинхронно  процессорами  8088  или  8086,  однако
 
                    могут    генерироваться     некоторыми     другими
 
                    процессорами (смотри signal).
 
 
 
 Возвращаемое       При успешном завершении raise возвращает 0, в про-
 
 значение           тивном случае ненулевое значение.
 
 
 
 Переносимость      raise поддерживается системами UNIX и  стандартом
 
                    ANSI C.
 
 
 
 Смотрите также     abort, signal.
 
 
 
 Пример:
 
 
 
 #include<signal.h>
 
 int main()
 
 {
 
 int a,b;
 
 
 
 a = 10;
 
 b = 0;
 
 if(b==0)
 
 /* предварить ошибку при делении на 0 */
 
    raise(SIGFPE);
 
 a = a / b;
 
 return 0;
 
 }


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

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




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



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


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