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

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


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

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



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

bar

 
 Функция            Рисует двумерный прямоугольник.
 
 
 
 Синтаксис          #include <graphics.h>
 
                    #include <conio.h>
 
                    void far bar(int left,int top,int right,int
 
                                 bottom);
 
 
 
 Файл, содержащий   graphics.h
 
 прототип
 
 
 
 Описание           bar рисует двухмерный заполненный прямоугольник.
 
                    Прямоугольник заполняется,     с     использованием
 
                    текущего цвета и шаблона заполнения.  bar не рисует
 
                    контур прямоугольника;  для того,  чтобы нарисовать
 
                    контур   двухмерного   прямоугольника,  используйте
 
                    функцию bar3d, с параметром depth равным 0.
 
 
 
                    Верхний левый и нижний правый  углы  прямоугольника
 
                    заданы   параметрами  (left,top)  и  (right,bottom)
 
                    соответствено. Координаты даются в пикселях.
 
 
 
 Возвращаемое       Нет.
 
 значение
 
 
 
 Переносимость      Функция уникальна для Borland C++. Эта функция
 
                    работает только на компьютерах IBM PC и совместимых
 
                    с    ними,   оснащенных   дисплейными   адаптерами,
 
                    поддерживающими  графический  режим.   Функция   не
 
                    совместима с Windows.
 
 
 
 Смотрите также     bar3d, rectangle, setcolor, setfillstyle,
 
                    setlinestyle.
 
 
 
 Пример:
 
 
 
 #include <graphics.h>
 
 #include <stdlib.h>
 
 #include <stdio.h>
 
 #include <conio.h>
 
 
 
 int main(void)
 
 {
 
 /* Запрос автоопределения */
 
 int graphdriver = DETECT, gmode, errorcode;
 
 int midx,midy,i;
 
 
 
 /* инициализация графики и локальных переменных */
 
 initgraph(&graphdriver,&gmode,"");
 
 
 
 /* получение результата инициализации */
 
 errorcode = graphresult();
 
 if(errorcode != grOk)  /* если ошибка */
 
 {
 
    printf("Ошибка :%s\n",grapherrormessage(errorcode));
 
    printf("Для останова нажмите любую клавишу\n");
 
    getch();
 
    exit(1);  /* завершение с кодом ошибки */
 
 }
 
 midx = getmaxx() / 2;
 
 midy = getmaxy() / 2;
 
 
 
 /* цикл по шаблонам заполнения */
 
 for(i=SOLID_FILL; i<USER_FILL; i++)
 
 {
 
    /* установить тип заполнения */
 
    setfillstyle(i,getmaxcolor());
 
 
 
    /* нарисовать прямоугольник */
 
    bar(midx - 50, midy - 50, midx + 50, midy+50);
 
 
 
    getch();
 
 }
 
 
 
 /* очистить */
 
 getch();
 
 closegraph();
 
 result 0;
 
 }
 
 
 
 ----------------------------------------------------------------------
 
 bar3d
 
 Функция            Рисует трехмерный столбец.
 
 
 
 Синтаксис          #include <graphics.h>
 
                    void far bar3d(int  left,  int  top,
 
                                     int right, int bottom,
 
                                      int depth, int topflag);
 
 Файл, содержащий   graphics.h
 
 прототип
 
 
 
 Описание           bar3d рисует трехмерный прямоугольный столбец,
 
                    затем закрашивает  его,  используя текущий шаблон и
 
                    цвет заполнения. Трехмерный контур столбца рисуется
 
                    текущим  цветом  и  типом линии.  Глубина столбца в
 
                    точках экрана задается параметром  depth.  Параметр
 
                    topflag  определяет,  будет  ли  рисоваться вершина
 
                    трехмерного столбца.  Если topflag  не  0,  вершина
 
                    рисуется,  в  противном случае вершина не рисуется.
 
                    (создается возможность ставить  несколько  столбцов
 
                    друг на друга.)
 
 
 
                    Верхний левый  и  нижний правый угол прямоугольника
 
                    задаются    (left,    top)     и     (right,bottom)
 
                    соответственно.
 
 
 
                    Для вычисления  типичной глубины для bar3d возьмите
 
                    25% ширины столбца, например:
 
 
 
                    bar3d(left,top,right,bottom,(right-left)/4,1)
 
 
 
 Возвращаемое       Нет.
 
 значение
 
 
 
 Переносимость      Функция уникальна для Borland C++. Эта функция
 
                    работает только на компьютерах IBM PC и совместимых
 
                    с    ними,   оснащенных   дисплейными   адаптерами,
 
                    поддерживающими графический   режим.   Функция   не
 
                    совместима с Windows.
 
 
 
 Смотрите также     bar, rectangle, setcolor, setfillstyle,
 
                    setlinestyle.
 
 
 
 Пример:
 
 
 
 #include <graphics.h>
 
 #include <stdlib.h>
 
 #include <stdio.h>
 
 #include <conio.h>
 
 
 
 int main(void)
 
 {
 
 /* Запрос автоопределения */
 
 int graphdriver = DETECT, gmode, errorcode;
 
 int midx,midy,i;
 
 
 
 /* инициализация графики и локальных переменных */
 
 initgraph(&graphdriver,&gmode,"");
 
 
 
 /* получение результата инициализации */
 
 errorcode = graphresult();
 
 if(errorcode != grOk)  /* если ошибка */
 
 {
 
    printf("Ошибка :%s\n",grapherrormessage(errorcode));
 
    printf("Для останова нажмите любую клавишу\n");
 
    getch();
 
    exit(1);  /* завершение с кодом ошибки */
 
 }
 
 midx = getmaxx() / 2;
 
 midy = getmaxy() / 2;
 
 
 
 /* цикл по шаблонам заполнения */
 
 for(i=SOLID_FILL; i<USER_FILL; i++)
 
 {
 
    /* установить тип заполнения */
 
    setfillstyle(i,getmaxcolor());
 
 
 
    /* нарисовать трехмерный столбец */
 
    bar3d(midx - 50, midy - 50, midx + 50, midy+50, 10, 1);
 
 
 
    getch();
 
 }
 
 
 
 /* очистить */
 
 closegraph();
 
 result 0;
 
 }


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

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




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



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


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